Я пробовал образец собственного аудио-кода в андроиде NDK. Когда я пытаюсь записать какую-то речь, а затем воспроизвести ее, она отлично работает. Он использует основной громкоговоритель (громкоговоритель) для воспроизведения речи. Я хочу изменить код, чтобы речь воспроизводилась в динамике уха вместо основного громкоговорителя. Любая помощь?Как настроить OpenSL для работы с динамиком уха, отличным от основного громкоговорителя или наушников
4
A
ответ
6
Я решил проблему, и я нашел группу, связанную с Google. Это было действительно полезно. Вот ссылка: https://groups.google.com/forum/#!topic/android-ndk/O-hufEm20cU
Я протестировал его в примере с родным аудио, предоставленным с помощью андроида NDK. Сначала вы должны установить интерфейс конфигурации Android, а затем установить тип потока в STREAM_VOICE после создания аудиоплеера.
// Code for working with ear speaker by setting stream type to STREAM_VOICE
SLAndroidConfigurationItf playerConfig;
result = (*bqPlayerObject)->GetInterface(bqPlayerObject, SL_IID_ANDROIDCONFIGURATION, &playerConfig);
SLint32 streamType = SL_ANDROID_STREAM_VOICE;
result = (*playerConfig)->SetConfiguration(playerConfig, SL_ANDROID_KEY_STREAM_TYPE, &streamType, sizeof(SLint32));
Спасибо, что поделились своими комментариями. Но поскольку я использовал ваш код после создания игрока, я потерпел аварию. Пожалуйста, предложите, как установить streamtype с помощью OpenSL-плеера. Я хочу использовать плеер Uri. –
Посмотрите на этот вопрос, пожалуйста. Это может вам помочь. http://stackoverflow.com/questions/24758121/buffering-uri-on-opensl-android Взгляните на документацию OpenSL ES. Для воспроизведения аудиоданных игроку Uri может понадобиться другой тип потока. –
Спасибо за ваш ответ. Я забыл добавить интерфейсный интерфейсный массив, используемый в аудиоплеере. Теперь я могу интегрировать SL_IID_ANDROIDCONFIGURATION в openSL, добавив его в требуемый массив интерфейсов. Как и звук SL_ANDROID_STREAM_VOICE по-прежнему поступает из заднего динамика. Что делать, если я хочу включить звук из фронтального центрального динамика –