Поддерживает ли openSL ES для Jelly Bean 4.3 переключение аудиомаршрутов?

Можно ли получить доступные аудио конечные точки (наушник, громкую связь, проводную гарнитуру, гарнитуру Bluetooth) через API openSL ES для Android 4.3?

Или все это делается на уровне Java?

Текущая ситуация такова, что я реализовал аудиодрайвер openSL ES. Драйвер ничего не делает, кроме как принимает пакеты микрофона от микрофона по умолчанию и доставляет пакеты динамика в конечную точку динамика по умолчанию.

Если возможно, я хотел бы создать в своем коде пару дополнительных функций. Один, чтобы узнать о конечных точках, и другой, чтобы установить конечную точку.


person user1884325    schedule 05.11.2013    source источник


Ответы (1)


Можно ли получить доступные аудио конечные точки (наушник, громкую связь, проводную гарнитуру, гарнитуру Bluetooth) через API openSL ES для Android 4.3?

Вы можете дать подсказки о том, как вы хотите маршрутизировать звук, используя разные типы аудиопотока, а также с помощью некоторых из AudioManager (например, setBluetoothScoOn и setSpeakerphoneOn). Но, в конце концов, OEM должен решить, как направить звук в той или иной ситуации.

Или все это делается на уровне Java?

Политика маршрутизации реализована на собственном уровне. Где вы найдете этот код, зависит от того, с какой платформой вы работаете, но на многих платформах Qualcomm вы найдете его в разделе hardware / qcom / audio / alsa_sound /.

person Michael    schedule 06.11.2013