Я использую AudioTrack в потоковом режиме. Примерно в одном из 5-10 раз после остановки воспроизведения короткого фрагмента wav-файла я слышу щелчки. Это сводит меня с ума, потому что я не могу последовательно воспроизвести это. Я пробовал различные комбинации вызовов AudioTrack.flush(), AudioTrack.pause() и AudioTrack.stop() перед вызовом AudioTrack.release(). Я также пытался вызвать AudioTrack.setStereoVolume() и передать результат AudioTrack.getMinVolume(). Ничего не сработало.
Некоторые наблюдения:
- Кажется, это происходит только при воспроизведении короткого фрагмента файла wav. Я не могу воспроизвести его, когда я играю более 3 секунд звука.
- Иногда AudioTrack.write() возвращает -22, когда я записываю конец аудиоданных. Я не вижу спецификации для -22 в Javadoc. Также этот случай не всегда совпадает с щелчком.
- Щелчок не всегда воспроизводится, даже если я воспроизведу один и тот же раздел wav-файла.
- Щелкающий звук может исходить из правого или левого динамика, но не из обоих.
Я вижу это на Acer Iconia A500 под управлением Android 4.0.3. Буду признателен за любые предложения.