Вход AudioSession с выхода Bluetooth на линейный выход или динамик - PullRequest
2 голосов
/ 29 ноября 2011

После настройки аудиосеанса следующий код разрешает ввод через Bluetooth.

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

Этот код выглядит так, как будто он допускает только ввод через Bluetooth, однако этот код также направляет вывод звука на устройство Bluetooth (вчехол для блютуз гарнитуры).Я хотел бы направить аудиовыход из линейного выхода или динамика, когда вход поступает от устройства Bluetooth.Я просто хочу получить аудиовход с устройства Bluetooth, я не хочу выводить звук через Bluetooth.

Возможно ли такое поведение?

1 Ответ

2 голосов
/ 01 декабря 2011

с iOS 5 это поведение невозможно, цитируя Apple, техническую поддержку

Устройства Bluetooth не являются устройствами "Jacked In", и поэтому любая другая аудио-маршрутизация должна быть выбрана пользователем и не может быть изменена вкод.Для этого вы можете использовать функциональность MPVolumeView, в которой будет отображаться дополнительный виджет маршрутизации, позволяющий пользователю указать маршрутизацию вывода.

В списке рассылки Core Audio имеется более старая тема, касающаяся этой функции.но поведение не изменилось:

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

Ссылка MPVolumeView:

http://developer.apple.com/library/ios/#documentation/mediaplayer/reference/MPVolumeView_Class/Reference/Reference.html

Однако MPVolumeView не позволяет вамдля маршрутизации ввода и вывода независимо.

...