Я делаю приложение, которое будет способно осуществлять VOIP-связь по глобальной сети, используя AudioManager, в частности AudioTrack и AudioRecord, AudioRecord работает нормально, но у меня серьезные проблемы с задержкой для воспроизведения с AudioTrack. Это действительно высоко и неприемлемо. Я получаю фрагменты по 160 байт, и мои настройки звука: 16 бит, 8 кГц, 1 канал, поэтому в моем фрагменте из 160 байт у меня есть около 10 мс на фрагмент, у меня не будет значительной задержки.
Я знаю, что есть много людей с такой же проблемой, но приложения VOIP существуют, и, вероятно, проблема моя.
PD: Я программирую на Java, я протестировал его между Motorola Milestone (Droid, android 2.2) и другим телефоном Samsung (android 2.3), и у меня одинаковые проблемы на обоих игровых устройствах. Кроме того, я попытался воспроизвести свой звук на своем компьютере в режиме реального времени. Судя по всему, проблема в плеере (AudioTrack). Задержка в сети очень низкая (я в глобальной сети), и я получаю более 99% пакетов (около 16 Кбит/с).
Есть ли способ продолжить работу с программой VOIP и сделать ее пригодной для использования?
Действительно спасибо, помимо этой проблемы, я не нашел четкого решения, и оно наверняка существует. Это очень обычное и полезное, больше в коммуникационном устройстве.