Проблема с AudioTrack - PullRequest
       17

Проблема с AudioTrack

3 голосов
/ 18 августа 2011

Здравствуйте, я написал программу (на Android NDK), которая выдает аудио буфер через JNI на Java.Проблема нестабильности.Иногда AudioTrack прекрасно воспроизводит буфер, а иногда появляются такие сообщения:

08-18 15:13:00.745: INFO/AudioTrack(12457): AudioTrack::set streamType[3] channels[12] format[1] sampleRate[44100] 08-18 15:13:00.749: INFO/AudioPolicyManager(2381): setOutputDevice() output 1 device 2 delayMs 0 force:0 08-18 15:13:04.183: INFO/AudioHardwareALSA(2381): Output standby called!!. Turn off PCM device.

Код на Java выглядит так:

final int bufSize = AudioTrack.getMinBufferSize(44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT);
track = new AudioTrack(AudioManager.STREAM_MUSIC, 44100,AudioFormat.CHANNEL_CONFIGURATION_STEREO,AudioFormat.ENCODING_PCM_16BIT, bufSize, AudioTrack.MODE_STREAM);
track.play();
int byt = track.write(buf, 0, length);

В чем может быть проблемас этой ошибкой?

1 Ответ

3 голосов
/ 08 сентября 2011

Вы должны позвонить track.write и сначала заполнить минимальный размер bufSize до вызова track.play.

...