ios - 在 iOS 中同时将音频路由到内置扬声器和蓝牙耳机

标签 ios swift bluetooth avaudioplayer avaudiosession

我正在通过 AVAudioPlayer 播放音频文件来模拟来电通知。我希望同时向内置扬声器和连接的蓝牙耳机播放音频。

我尝试使用 AVAudioSessionCategoryMultiRouteAVAudioSessionCategoryPlayAndRecord 并选择了 AllowBluetooth 类别选项。

对于 AVAudioSessionCategoryMultiRoute,无法在可用输出中检测到蓝牙设备。

对于 AVAudioSessionCategoryPlayAndRecord,音频根据设置 Audio Session 类别时传入的类别选项路由到蓝牙或扬声器。

是否可以使用 AVAudioSession API 将音频同时路由到内置扬声器和蓝牙设备?是否有任何代码片段(如果有)?

最佳答案

查看 documentation AVAudioSessionCategoryMultiRoute 声明(强调由我添加)

The category for routing distinct streams of audio data to different output devices at the same time.

意味着你只能将不同的音频流输出到不同的输出 channel 。您不能将相同的音频流输出到多个 channel 。

就我而言,也没有其他方法可以实现在多个 channel 上播放相同的音频流。

关于ios - 在 iOS 中同时将音频路由到内置扬声器和蓝牙耳机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45592225/

相关文章:

android - 我无法在 Android 应用程序中使用 AltBeacon 库在后台检测到 iBeacon

iphone - 使用 [NSThread sleepForTimeInterval :2. 0] 时可以停止或取消循环功能吗?在 IOS 中

java - libGDX - 通过 SpriteBatch 结果翻转绘制纹理

ios - 如何在 Swift 中重新加载 UIPageViewController 以重新加载其 View

swift - 8000 PCM格式的AVAudioEngine如何录音播放?

ios - 知道 Realm Collection Change 通知中对象的哪个元素发生了变化?

ios - 在 Swift 中使用蓝牙耳机的麦克风和内置扬声器进行录音和播放

java - 获取蓝牙设备服务 android

ios - 初始化 NSManagedObject 的子类

php - Swift - 发布到服务器多个值