Проблема:
Как вы, наверное, уже слышали, Android не предоставляет аудио API с низкой задержкой.Под звуком с низкой задержкой я имею в виду, что вы должны иметь возможность получать аудиосигналы с микрофона и воспроизводить звук без большого промежутка времени (например, 5-7 мс)
Я пробовал старую Java(с AudioRecord и AudioTrack) и «новый» OpenSL ES.Они ужасны и делают приложение непригодным для использования. Проблема была хорошо задокументирована здесь. Кстати, iOS API может давать задержку около 5-7 мс.
Поиск обходных путей:
Но я все равно пытаюсь сделать звук с низкой задержкой. Нечто подобное описывает этот ответ.
"Однако я смог добиться этого удовлетворительно только написав собственный код, который выполнял микширование внутри и получал доступ к низкоуровневому воспроизведению звука.API только для воспроизведения окончательного смешанного вывода. Способы воспроизведения звуков в .Net Compact Framework более высокого уровня теоретически способны к полифонии, но на практике они работают ужасно (много глюков, заиканий и искажений). "
Имеет ли это смысл для Android? Ответ обескураживает.
Так что мой вопрос.Неужели нет никакого способа добиться задержки звука в 10 мс с помощью Android?
Если честно, я не ожидаю решения в ближайшее время, а просто хочу, чтобы один великий ум дал ответ на эту проблему.