3
我試圖在通用應用程序中錄製和播放音頻。 AVAudioSession配置是:使用iPod錄製和播放音頻
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error: nil];
UInt32 category = kAudioSessionCategory_PlayAndRecord;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(category), &category);
這對於內置麥克風的設備工作正常。但在第三代iPod中,我正在經歷隨意的不良行爲。有時候所有的工作都很好,有時候只有帶有集成話筒的耳機才能插入。在這種情況下,無法在沒有耳機的情況下聽到應用程序中的任何聲音。
感謝戴夫,但這並沒有解決我的問題。問題在於,當我將音頻類別設置爲kAudioSessionCategory_PlayAndRecord以允許在iPod第三代錄制時,我將丟失外部揚聲器聲音。我正在檢測設備型號和麥克風插入/拔出,並嘗試重置音頻會話類別,但我無法恢復揚聲器聲音。任何線索? – LoDani
@LoDani在iPod Touch第3代上,當您獲得kAudioSessionProperty_AudioInputAvailable時,結果如何?拔下耳機時會出現問題嗎? – Dabrut
即使連接了耳機,它也會返回true(micConnected!= 0)。但是我得到正確的結果,要求[[AVAudioSession sharedInstance] inputIsAvailable]。是的,在錄製後拔下耳機時會出現問題。我試圖改變AudioCategory和AudioRoute屬性後檢測到拔掉沒有結果。 – LoDani