Loading AI tools
Из Википедии, свободной энциклопедии
Speex — свободный кодек для сжатия речевого сигнала, который может использоваться в приложениях «голос-через-интернет» (VoIP). С высокой вероятностью он не имеет никаких патентных ограничений и лицензирован под последней версией лицензии BSD (без третьей статьи). Сжатые кодеком Speex данные можно хранить либо в формате хранения звуковых данных Ogg, либо передавать напрямую с помощью пакетов UDP/RTP.
Speex | |
---|---|
MIME-тип | audio/x-speex[1] и audio/speex[1] |
Разработчик | Джин-Марк Валин[вд] и Xiph.Org |
Тип формата | Аудиокодек |
Содержится в | Ogg |
Стандарт(ы) | Спецификация |
Сайт | speex.org (англ.) |
Разработчики противопоставляют свою разработку другим открытым кодекам, например, кодеку Vorbis, утверждая, что именно кодек Speex лучше всего подходит для передачи голоса по сети с ненадёжной доставкой пакетов данных. При этом авторы разработки специально подчёркивают, что кодек подходит для использования в сетях с ненадёжной передачей пакетов, то есть либо пакет пришёл, либо нет. При этом возможность искажения содержимого пакета должна быть исключена, поэтому Speex не подходит для передачи голоса, например, в радио- и сотовой связи.
Speex относится к классу так называемых Code Excited Linear Prediction (CELP)-кодеков, то есть кодеков, построенных на основе так называемого линейного предсказательного кодирования ЛПК. ЛПК использует для аппроксимации отрезка речевого сигнала цифровой фильтр только с обратными связями (т. н. «авторегрессионный фильтр»). Коэффициенты этого фильтра «подгоняются» под отрезок сигнала с помощью процедуры Левинсона (в западной литературе — Левинсона-Дурбина). CELP-модификация ЛПК предусматривает наличие т. н. «кодовой книги», которая содержит предопределённые наборы возбуждающих ЛПК-фильтр единичных импульсов.
Речевой сигнал в кодеке Speex разбивается на неперекрывающиеся отрезки длительностью 20 мс (160 отсчётов при 8 КГц). При этом для оценки возбуждающего набора вышеуказанный отрезок разбивается на четыре подотрезка длительностью 5 мс соответственно. На каждом из подотрезков отыскиваются возбуждающие наборы импульсов как текущего подотрезка (из кодовой книги), так и двух предыдущих подотрезков. В отличие от других кодеков, с целью избежать патентных ограничений Speex не использует алгебраическое кодирование, а только векторное. Возбуждения двух предыдущих подотрезков складываются с переменными весами, в отличие от ряда других кодеков, где используются переменные положения по времени.
По заявлению разработчиков, Speex оптимизирован для получения высококачественного речевого сигнала при низких скоростях. Кодек Speex также позволяет использовать переменную степень сжатия сигнала и поддерживает сигналы с различной шириной полосы: сверхширокополосный (англ. ultra-wideband, частота дискретизации 32 КГц), широкополосный (англ. wideband, 16 КГц) и узкополосный (англ. narrowband, 8 КГц). Направленность на системы «голос-через-интернет» (VoIP) предопределяет, что Speex должен быть устойчив к потерям пакетов данных, но не к повреждению их, так как UDP/IP-протокол, в отличие от TCP/IP, не гарантирует доставки пакетов потребителю, но, при этом, вероятность повреждения данных в UDP/IP-пакете в проводных системах связи крайне мала. Следует отметить, что можно использовать для передачи данных, сжатых кодеком Speex, и TCP/IP-пакеты. В последнем случае, вероятность порчи данных становится мизерной. Эта особенность определяет отсутствие в формате данных кодека Speex каких-либо средств защиты от ошибок.
Основные характеристики кодека:
Speex поддерживает большое количество приложений, от потоковых приложений (телеконференции) до видеоигр и программ обработки звука. Большинство из них используют фильтр DirectShow. Также для проигрывателей Winamp и XMMS имеются соответствующие дополнения. Кроме того, KSP Sound Player начиная от версии 2006.0.0.2 и foobar2000 поддерживают Speex.
MIME тип для Speex — audio/x-speex. В ближайшем будущем он будет заменён на audio/speex.
Последние версии движка Half-Life 1 и основанные на нём моды используют кодек voice_speex.dll для реализации внутриигровых VoIP функций. Speex обеспечивает значительно лучшее качество, чем используемый по умолчанию кодек Miles.
Система The United States Army’s Land Warrior, разработанная General Dynamics, также использует Speex.
В Sid Meier’s Civilization 4 описания технологий, озвученные Леонардом Нимоем, закодированы в формат Speex.
VoIP-приложение Teamspeak предлагает Speex в числе 3 доступных кодеков. Открытая VoIP-программа Mumble до версии 1.2.4 использовала Speex. VoIP-сервис flaphone использует Speex кодек. Система управления предприятием TeamWox для внутренних голосовых коммуникаций использует кодек Speex.
Поддержка кодека Speex есть в программном коммутаторе РТУ для сетей NGN[2].
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.