我有一個應用程序播放錄製的音頻以及重複的聲音。聲音通過板載iPad揚聲器正確播放,如果從耳機插孔連接到立體聲音頻輸入線,則播放效果也會很好。當我將iPad與我的藍牙立體聲輸入端配對時,我的其他應用程序(爲iPhone編寫,在iPad上運行)中的所有聲音都可以正常工作,而我設備上的所有其他聲音也能正常工作。AVAudioPlayer和AVAudioSession不會播放到iPad上的藍牙立體聲(2或其他)
的問題是我的應用程序爲iPad寫不打通過藍牙路徑,而是從播放內置揚聲器。
在didFinishLaunchingWithOptions我的應用程序委託(...)方法,我把以下內容:
NSError *error = nil;
[[AVAudioSession sharedInstance] setMode:AVAudioSessionModeDefault error:&error];
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:&error];
[[AVAudioSession sharedInstance] setActive:YES error:&error];
這段代碼被稱爲並且沒有被返回的錯誤。
在我的控制器代碼,我已經記錄了我玩用AVAudioPlayer樣本如下:
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:recordURL error:&error];
audioPlayer.numberOfLoops = 0;
[audioPlayer setDelegate:self];
[audioPlayer play];
在其他方面,我有正在發揮螺紋控制的循環反覆短時0.01秒聲音無人機和我這樣做使用OpenAL:
alSourcePlay(sourceID);
這是我在我的其他應用程序編寫的iPhone,按需工作相同的代碼。
我意識到有關於藍牙輸入的其他線程,但我有我的iPad應用程序的藍牙音頻聲音輸出的具體問題。
除了你的問題AVAudioSessionCategoryPlayAndRecord會降低輸出音量。如果你沒有做VOIP(或任何其他記錄並在同一時間播放),請避免將你的類別設置爲此。 –
發現更多信息。在配置我的OpenAL之前,我正在設置AVAudioSession。之後通過設置AVAudioSession信息(全部在viewDidLoad中,現在僅在最後),音頻現在播放到藍牙揚聲器。現在,我無法記錄。我發現輸出到藍牙和內置麥克風輸入可能存在衝突。有什麼建議麼? – Cal30