iPhone 5有三個麥克風 - 正面,背面和背面。我想同時記錄下所有的信號處理。我試了幾天失敗了。iPhone上的立體聲錄音
使用AVAudioSession,我可以看到麥克風:
NSLog(@"%@", [AVAudioSession sharedInstance].availableInputs);
"<AVAudioSessionPortDescription: 0x14554400, type = MicrophoneBuiltIn; name = iPhone Microphone; UID = Built-In Microphone; selectedDataSource = Back>"
NSLog(@"%@", [AVAudioSession sharedInstance].availableInputs[0].inputDataSources);
"<AVAudioSessionDataSourceDescription: 0x145afb00, ID = 1835216945; name = Bottom>",
"<AVAudioSessionDataSourceDescription: 0x145b1870, ID = 1835216946; name = Front>",
"<AVAudioSessionDataSourceDescription: 0x145b3650, ID = 1835216947; name = Back>"
我可以用AVAudioSessionPortDescription -setPreferredDataSource:error:
從三個一個記錄。但我不能同時錄製多首歌曲。如果我將輸入通道的數量設置爲2,則可以從同一個麥克風獲得兩個相同的音軌。
AVAudioRecorder有一個屬性channelAssignments
這似乎像它應該工作,但AVAudioSession inputNumberOfChannels
和maximumInputNumberOfChannels
都是1屬性channelAssignments
是專爲具有多通道的輔助麥克風。
我試過使用低級別AudioUnit,但我得到了相同的結果。我無法在AudioUnit上找到任何屬性來更改輸入源。
任何幫助,將不勝感激。
我認爲您需要≥iOS 7.0(請參閱https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVAudioSession_ClassReference/Reference/Reference.html#//apple_ref/doc/uid/TP40008240 -CH1-SW112)。 –
我所有的經驗都與使用iOS 7 SDK有關,因此單靠這一點不足以回答我的問題,但也許我錯過了更具體的東西。 –
已經在iOS8或iOS9 beta版上試過了嗎?我有興趣同時記錄兩個來源。 – nacho4d