AudioSession输入从蓝牙输出到线路输出或扬声器



一旦设置了音频会话,下面的代码允许蓝牙输入。

UInt32 allowBluetoothInput = 1;
AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryEnableBluetoothInput, sizeof (allowBluetoothInput), &allowBluetoothInput);

这段代码看起来只允许蓝牙输入,但是这段代码也将音频输出路由到蓝牙设备(在蓝牙耳机的情况下)。当输入来自蓝牙设备时,我想将音频输出从线路输出或扬声器中输出。我只是想从蓝牙设备获得音频输入,我不想通过蓝牙输出音频。

这种行为可能吗?

从iOS 5开始这种行为是不可能的,引用苹果技术支持

蓝牙设备不是"插入式"设备,因此也不是任何其他设备音频路由必须由用户选择,不能在代码中更改。要做这个,你可以使用MPVolumeView的功能有一个额外的路由小部件可查看,允许用户指定输出路由。

Core Audio邮件列表上有一个关于这个的旧线程功能和行为没有改变:

http://lists.apple.com/archives/coreaudio-api/2009/Oct/msg00030.html

MPVolumeView参考:

http://developer.apple.com/library/ios/文档/媒体播放器/引用/MPVolumeView_Class/引用/Reference.html

但是MPVolumeView不允许您独立路由输入和输出

相关内容

  • 没有找到相关文章

最新更新