Джиттербуферы Speex на мобильных устройствах - PullRequest
1 голос
/ 15 сентября 2011

Я использую приложение, использующее джиттербуфер speex. Что происходит, так это то, что джиттербуферы, по-видимому, увеличиваются при больших колебаниях соединения, и в результате получается большая задержка (до 5 секунд) - в основном, это выглядит так, как будто пакеты не выбрасываются.

Я хочу уменьшить задержку; допускайте максимальную задержку в 1 секунду, даже если это означает удаление старых буферизованных пакетов. У меня вопрос, как вы настраиваете джиттербуфер speex для этого?

Спасибо

1 Ответ

1 голос
/ 16 сентября 2011

В буфере дрожания Speex есть два параметра, которые вы можете использовать: JITTER_BUFFER_SET_MAX_LATE_RATE и JITTER_BUFFER_SET_LATE_COST.Если вы установите MAX_LATE_RATE на X%, тогда буфер дрожания никогда не будет «отбрасывать» более поздних пакетов пакетов, чем X% (и увеличивать задержку при необходимости).Параметр SET_LATE_COST просто управляет относительной «ошибкой» отбрасывания кадра по сравнению с увеличением задержки.

...