Android: Sound API (детерминированная, низкая задержка)

Я рассматриваю все виды звука Android Sound API, и я хотел бы знать, какой из них я должен использовать. Моя цель состоит в том, чтобы получить звук низкой задержки или, по крайней мере, детерминированное поведение относительно задержки воспроизведения.

У нас было много проблем, и кажется, что Android Sound API является дерьмом, поэтому я исследую возможности.

Проблема у нас есть, заключается в том, что существует значительная задержка между Sound_out.write (Sound_Samples); и фактический звук, воспроизводимый из динамиков. Обычно это около 300 мс. Проблема в том, что на всех устройствах она отличается; У некоторых нет этой проблемы, но большинство из них колен (однако, CS Call имеет нулевую задержку). Самая большая проблема с этой нелепой задержкой состоит в том, что на некоторых устройствах эта задержка кажется каким-либо случайным значением (то есть. Это не всегда 300 мс).

Я читаю о opensl es, и я хотел бы знать, был ли у кого-нибудь был опыт с ним, или он тот же дерьмо, но завернутый в разные пакет?

Я предпочитаю иметь родной доступ, но я не Mind Java Слойное косвествие, пока я могу получить детерминированное поведение: либо задержка должна быть постоянной (для данного устройства), либо я хотел бы получить доступ к текущей позиции воспроизведения вместо того, чтобы угадать его с диапазоном ошибок ± 300 MS ...

Редактировать:
1,5 года спустя я попробовал несколько телефонов Android, чтобы увидеть, как я могу получить наилучшую возможную задержку для голосовой связи в реальном времени. Использование специализированных инструментов I измерила задержку пути WACE. Наилучшие результаты составляли более 100 мс, большинство телефонов были в диапазоне 180 мс. У кого-нибудь есть идеи?

35
задан Pavel P 28 February 2013 в 21:23
поделиться