我遇到以下问题:每当我在我的应用程序中将播放和录制类别设置为 Audio Session 时,AirPlay 变得不可用:
[[AVAudioSession sharedInstance]
setCategory: AVAudioSessionCategoryPlayAndRecord
error: &setCategoryError];
此调用使 AirPlay 消失并立即将音频重新路由到扬声器。
问题很容易重现,例如在 Xcode 文档中的示例项目 avTouch
上,将 AVAudioSessionCategoryPlayback
类别替换为 AVAudioSessionCategoryPlayAndRecord
:在原始示例中,AirPlay 选择器是可见的,并允许更改输出源,而对于 AVAudioSessionCategoryPlayAndRecord
类别,选择器会消失。
是否有适当的方法切换到 AVAudioSessionCategoryPlayAndRecord
类别,以便 AirPlay 仍然可用?
(这样的问题已经already asked,但没有得到任何答案。)
最佳答案
您尝试使用哪种 AirPlay 设备?它有麦克风吗?
否则,iOS 将不会在使用 PlayAndRecord 类别时将其作为选项显示,因为该设备无法播放和录音。不过,它会在使用“播放”类别时显示。
另外,如果您使用的设备是蓝牙设备,您是否将 AVAudioSessionCategoryOptionAllowBluetooth 设置为 YES?
关于objective-c - AVAudioSessionCategoryPlayAndRecord 使 AirPlay 不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13138197/