2015-01-30 3 views
1

Я использую AudioRecord для записи данных микрофона, одновременно играя звуки с SoundPool. Моя проблема: когда я вызываю startRecording() в AudioRecord, SoundPool становится изменчивым или полностью останавливается. Когда я вызываю stopRecording(), все звуковые сигналы поступают сразу. Есть ли лучшая библиотека, которую я должен использовать? Я заметил, что кнопки в приложении все еще реагируют и все еще способны воспроизводить звуки по умолчанию.Воспроизведение звука на Android с помощью SoundPool при записи микрофона с помощью AudioRecord

SoundPool останавливает воспроизведение звуков, даже когда поток, который называется AudioRecord.startRecording(), завершен. Он не воспроизводит звуки снова, пока я не вызову AudioRecord.stopRecording(). Я бы хотел сделать это сразу. Видя, как звуки, которые я играю, - это короткие звуки, я думал, что SoundPool был правильным классом. Если кто-то знает, как класс Android UI Button воспроизводит звуки, я мог бы скопировать его, и он должен работать.

Это в эмуляторе с последним Android Studio 1.0.2

Edit: MediaPlayer хуже, он терпит неудачу после вызова AudioRecord.startRecording() и он имеет гораздо больше, чем латентность Soundpool (при отсутствии записи в то же время.) Я знаю, что SoundPool.play() регулярно вызывается из-за операторов Log.

ответ

0

Это просто эмулятор. Он работает на физическом устройстве Android.