当BT设备只有扬声器时,如何使用PlayAndRecord在AVAudioSession中保持蓝牙设备的输出?

时间:2018-01-10 10:50:16

标签: ios bluetooth avaudiosession a2dp hfp

我创建了一个AVAudioSession,AVAudioSessionCategoryPlayAndRecordAVAudioSessionCategoryOptionDefaultToSpeaker | AVAudioSessionCategoryAllowBluetooth作为选项。 只要连接扬声器和麦克风的设备一切都很好。 声音来自外部扬声器,输入通过外部麦克风录制。 但是当我连接蓝牙扬声器(即Bose SoundLink)时,输出切换到iPhone-Speaker。

对我来说奇怪的是,蓝牙扬声器列在[[AVSession sharedInstance] availableInputs]

使用AVAudioSessionCategoryAllowBluetoothA2DP不是一个选项,因为它总是使用iPhone-BuiltIn-Microphone。

我发现Bose SoundLink报告的是麦克风输入,虽然它没有内置麦克风,但可以连接外接麦克风。因此,这是一个不完美的设备来测试。

无论如何,我的问题仍然是要找出新连接的设备是仅限扬声器还是内置麦克风。

0 个答案:

没有答案