Шум OpenSL ES при запуске воспроизведения нового буфера

Я использую OpenSL ES для воспроизведения звука на Android. У меня возникла проблема, когда один буфер в очереди воспроизведения заканчивается и начинается другой, между ними часто слышен легкий треск.

Это известная проблема? Как я могу этого избежать?


person Andres Traumann    schedule 08.10.2016    source источник


Ответы (1)


После долгих отладок я нашел проблему. В выводе logcat было следующее сообщение:

AUDIO_OUTPUT_FLAG_FAST отклонен клиентом; передача 1, дорожка 22050 Гц, выход 48000 Гц

В принципе, после изменения частоты дискретизации воспроизведения до 48000 все заработало нормально. Кажется, ресемплер Android OpenSL ES работает не очень хорошо. Прямо сейчас я делаю ресемплинг в программе, чтобы сделать его 48 кГц, а затем иметь возможность его воспроизводить.

person Andres Traumann    schedule 10.10.2016