Методы кодирования речевой информации

Одним из важных факторов эффективного использования пропускной способности IP-канала является выбор кодека.

Все существующие сегодня типы речевых кодеков по принципу действия можно разделить на три группы:

1. Кодеки формы сигнала. Это кодеки с импульсно-кодовой модуляцией (ИКМ) и адаптивной дифференциальной импульсно-кодовой модуляцией (АДИКМ), использующиеся сегодня в системах традиционной телефонии. В большинстве случаев, представляют собой сочетание АЦП/ЦАП.

2. Кодеки исходной информации или кодеки с вокодерным преобразованием речевого сигнала. Возникли в системах мобильной связи для снижения требований к пропускной способности радиотракта. Эта группа кодеков использует гармонический синтез сигнала на основании информации о его вокальных составляющих - фонемах. В большинстве случаев, такие кодеки реализованы как аналоговые устройства.

3. Комбинированные (гибридные) кодеки сочетают в себе технологию вокодерного преобразования/синтеза речи, но оперируют уже с цифровым сигналом посредством специализированных DSP. Кодеки этого типа содержат в себе ИКМ или АДИКМ - кодек и реализованный цифровым способом вокодер. В голосовых шлюзах IP-телефонии понятие кодека подразумевает не только алгоритмы кодирования/декодирования, но и их аппаратную реализацию.

Большинство кодеков, используемых в IP-телефонии, описаны рекомендациями семейства «G» (рис. 4.2).


  Системы мультимедиа в сети с коммутацией пакетов
     
       
Аналого-цифровое преобразование   Аналого-цифровое преобразование со сжатием
             
    Рекомендация G.722 (кодирование спектра частот до 7 кГц со скоростью 64 кбит/с)     Рекомендация G.723 (сжатие речевого потока для передачи со скоростями 5,3 и 6,3 кбит/с)
           
    Рекомендация G.711 (импульсно-кодовая модуляция речевого спектра частот)     Рекомендация G.728 (сжатие речевого потока для передачи со скоростью 16 кбит/с и меньше с малым временем задержки)
         
      Рекомендация G.729 (сжатие речевого потока для передачи со скоростью 8 кбит/с)

Рис. 4.2. Стандарты для кодирования речевых сигналов

Все методы кодирования, основанные на определенных предположениях о форме сигнала, не подходят при передаче сигнала с резкими скачками амплитуды. Именно такой вид имеет сигнал, генерируемый модемами или факсимильными аппаратами, поэтому аппаратура, поддерживающая сжатие, должна автоматически распознавать сигналы факс-аппаратов и модемов и обрабатывать их иначе, чем голосовой трафик. Многие методы кодирования берут свое начало от метода кодирования с линейным предсказанием LPC (Linear Predicative Coding). В качестве входного сигнала в LPC используется последовательность цифровых значений амплитуды, но алгоритм кодирования применяется не к отдельным цифровым значениям, а к определенным их блокам. Для каждого такого блока значений вычисляются его характерные параметры: частота, амплитуда и ряд других. Именно эти значения и передаются по сети. При таком подходе к кодированию речи, во-первых, возрастают требования к вычислительным мощностям специализированных процессоров, используемых для обработки сигнала, а во-вторых, увеличивается задержка при передаче, поскольку кодирование применяется не к отдельным значениям, а к некоторому их набору, который перед началом преобразования следует накопить в определенном буфере.

Важно, что задержка в передаче речи связана не только с необходимостью обработки цифрового сигнала (эту задержку можно уменьшать, увеличивая мощность процессора), но и непосредственно с характером метода сжатия. Метод кодирования с линейным предсказанием LPC позволяет достигать очень больших степеней сжатия, которым соответствует полоса пропускания 2,4 или 4,8 кбит/с. Однако качество звука здесь сильно страдает, поэтому в коммерческих приложениях он не используется, а применяется в основном для ведения слу­жебных переговоров. Более сложные методы сжатия речи основаны на применении LPC в сочетании с элементами кодирования формы сигнала. В этих алгоритмах используется кодирование с обратной связью, когда при передаче сигнала осуществляется оптимизация кода. Закодировав сигнал, процессор пытается восстановить его форму и сличает результат с исходным сигналом, после чего начинает варьировать параметры кодировки, добиваясь наилучшего совпадения. Достигнув такого совпадения, аппаратура передает полученный код по линиям связи, а на противоположном конце происходит восстановление звукового сигнала. Ясно, что для использования такого метода требуются еще более серьезные вычислительные мощности.

Одной из самых распространенных разновидностей описанного метода кодирования является метод LD-CELP (Low-Delay Code-Excited Linear Prediction). Он позволяет достичь удовлетворительного качества воспроизведения при пропускной способности 16 кбит/с. Алгоритм применяется к последовательности цифр, получаемых в результате аналого-цифрового преобразования голосового сигнала с 16-разрядным разрешением. Пять последовательных цифровых значений кодируются одним 10-битовым блоком - это и дает те самые 16 кбит/с. Для применения этого метода требуются большие вычислительные мощности: в частности, в марте 1995 г. ITU принял новый стандарт - G.723, который предполагается использовать при сжатии речи для организации видеоконференций по телефонным сетям. Этот стандарт представляет собой часть более общего стандарта Н.324, описывающего подход к организации таких видеоконференций. Цель - организация видеоконференций с использованием обычных модемов. Основой G.723 является метод сжатия речи MP-MLQ (Multipulse Maximum Likelihood Quantization). Он позволяет добиться весьма существенного сжатия речи при сохранении достаточно высокого качества звучания. В основе метода лежит описанная выше процедура оптимизации. С помощью различных усовершенствований можно сжимать речь до уровня 4,8, 6,4, 7,2 и 8 кбит/с. Структура алгоритма позволяет на основе программного обеспечения изменять степень сжатия голоса в ходе передачи. Вносимая кодированием задержка не превышает 20 мс. Повышая эффективность использования полосы пропускания, механизмы сжатия речи в то же время могут привести к ухудшению её качества и увеличению задержек.

Современные продукты для IP-телефонии применяют самые разные кодеки, стандартные и нестандартные. Конкурентами являются кодеки GSM (13,5 кбит/с) и кодеки МСЭ-Т серии G. Единственным обязательным для применения кодеком остаётся стандарт G.711. В качестве дополнительных высокопроизводительных кодеков рекомендованы G.723 и G.729.

Рассмотрим кодек G. 711.

Рекомендация G.711, утверждённая МККТТ в 1984 г., описывает кодек, использующий ИКМ преобразование аналогового сигнала с точностью 8 бит тактовой частотой 8 кГц и простейшей компрессией амплитуды сигнала. Скорость потока данных на выходе преобразователя составляет 64 кбит/с (8 бит х 8 кГц). Для снижения шума квантования и улучшения преобразования сигналов с небольшой амплитудой при кодировании используется нелинейное квантование по уровню согласно специальному псевдо-логарифмическому закону: А-закон для европейской системы ИКМ-30/32 или μ-закон для североамериканской системы ИКМ-24.

Первые ИКМ кодеки с нелинейным квантованием появились уже в 60-х годах прошлого столетия. Кодек G.711 широко распространён в системах традиционной телефонии с коммутацией каналов. Несмотря на то, что рекомендация G.711 для IP-телефонии является основной и первичной, в шлюзах IP-телефонии данный кодек применяется редко из-за высоких требований к полосе пропускания и задержкам в канале передачи. Использование G.711 в IР-телефонии обосновано лишь в тех случаях, когда требуется обеспечить максимальное качество кодирования речевой информации при небольшом числе одновременных разговоров. Одним из примеров применения кодека G.711 могут послужить IP-телефоны компании Cisco.

Рассмотрим кодекG.723.

Рекомендация G.723 описывает гибридные кодеки, использующие технологию кодирования речевой информации, сокращённо называемую MP-MLQ (Multi-Pulse - Multi Level Quantization - множественная импульсная, многоуровневая квантизация). Данные кодеки можно охарактеризовать, как комбинацию АЦП/ЦАП и вокодера. Своим возникновением гибридные кодеки обязаны системам мобильной связи. Применение вокодера позволяет снизить ско- рость передачи данных в канале, что принципиально важно для эффективного использования радиотракта и IP-канала. Основной принцип работы вокодера -синтез исходного речевого сигнала посредством адаптивной замены его гармонических составляющих соответствующим набором частотных фонем и согласованными шумовыми коэффициентами. Кодек G.723 осуществляет преобразование аналогового сигнала в поток данных со скоростью 64 кбит/с (ИКМ), а затем при помощи многополосного цифрового фильтра/вокодера выделяет частотные фонемы, анализирует их и передает по IP-каналу информацию только о текущем состоянии фонем в речевом сигнале. Данный алгоритм преобразования позволяет снизить скорость кодированной информации до 5,3-6,3 кбит/с без видимого ухудшения качества речи. Кодек имеет две скорости и два варианта кодирования: 6,3 кбит/с с алгоритмом MP-MLQ и 5,3 кбит/с с алгоритмом CELP. Первый вариант предназначен для сетей с пакетной передачей голоса и обеспечивает лучшее качество кодирования по сравнению со вторым вариантом, но менее адаптирован к использованию в сетях со смешанным типом трафика (голос/данные).

Процесс преобразования требует от DSP 16,4-16,7 MIPS (Million Instructions Per Second) и вносит задержку 37 мс. Данный кодек уступает по качеству кодирования речи кодеку G.729a, но менее требователен к ресурсам процессора и пропускной способности канала.

Рассмотрим кодек G.729.

Семейство включает кодеки G.729, G.729 Annex A, G.729 Annex В (содержит VAD и генератор комфортного шума). Кодеки сокращённо называют CS-ACELP (Conjugate Structure - Algebraic Code Excited Linear Prediction -сопряжённая структура с управляемым алгебраическим кодом и линейным предсказанием). Процесс преобразования требует от DSP 21,5 MIPS и вносит задержку 15 мс. Скорость кодированного речевого сигнала составляет 8 кбит/с. В устройствах VoIP данный кодек занимает лидирующее положение, обеспечивая наилучшее качество кодирования речевой информации при достаточно высокой компрессии. Его поддерживают значительное число производителей продуктов дляIP-телефонии.

Встречаются также системы IP-телефонии, применяющие кодеки G.726 и G.728.

Рассмотрим кодек G.726.

Один из старейших алгоритмов сжатия речи ADPCM - адаптивная дифференциальная ИКМ (стандарт G.726 был принят в 1984 г.). Этот алгоритм даёт практически такое же качество воспроизведения речи, как и ИКМ, однако для передачи информации при его использовании требуется полоса всего 16-32 кбит/с. Метод основан на том, что в аналоговом сигнале, передающем речь, невозможны резкие скачки интенсивности, поэтому, если кодировать не саму амплитуду сигнала, а её изменение по сравнению с предыдущим значением, то можно обойтись меньшим числом разрядов. В ADPCM изменение уровня сигнала кодируется четырёхразрядным числом, при этом частота измерения амплитуды сигнала сохраняется неизменной. Процесс преобразования не вносит существенной задержки и требует от DSP 5,5-6,4 MIPS. Кодек может применяться совместно с кодеком G.711 для снижения скорости кодирования последнего. Кодек предназначен для использования в системах видеоконференций.

Рассмотрим кодек G.728.

Гибридный кодек, описанный в рекомендации G.728 в 1992 г., относится к категории LD-CELP (Low Delay - Code Excited Linear Prediction - кодек с управляемым кодом линейным предсказанием и малой задержкой). Кодек обеспечивает скорость преобразования 16 кбит/с, вносит задержку при кодировании от 3 до 5 мс и для его реализации необходим процессор с быстродействием более 40 MIPS. Кодек предназначен, в основном, для использования в системах видеоконференций. В устройствах IP-телефонии данный кодек применяется достаточно редко.

Основные характеристики рассмотренных кодеков приведены в таблице 2.1.

Количественными характеристиками ухудшения качества речи являются единицы QDU (Quantization Distortion Unit): 1 QDU соответствует ухудшению качества при оцифровке с использованием стандартной процедуры ИКМ. Значения QDU для основных методов компрессии приведены в таблице 4.2.

Характеристики кодеков. Таблица 4.1.

Кодек Метод компрессии Скорость кодирования Сложность реализации Качество Задержка
G.726 ADPCM 32/24/16 кбит/с Низкая (8 MPS) Хорошее (32), плохое (16) Очень низкая (0,125 мкс)
G.729 CS-ACELP 8 кбит/с Высокая (30 MIPS) Хорошее Низкая (3-5 мс ()))0))мс) мс))мс) мсмсмс)
G.729A CA-ACELP 8 кбит/с Умеренная (20 MIPS) Среднее Низкая (3-5 мс)
G.723.1 MP-MLQ 6,3/5,3 кбит/с Умеренная (16 MIPS) Хорошее (6,3), плохое (5,3) Высокая (37 мс)
G.728 LD-CELP 16 кбит/с Очень высокая (40 MIPS) Хорошее Низкая (3-5 мс)

Единицы ухудшения качества речи QDU для различных методов

компрессии. Таблица 4.2.

Метод компрессии QDU
ADPCM 32 кбит/с 3,5
j ADPCM 24 кбит/с
ILD-CELP 16 кбит/с 1 3,5
JCS-CELP 8 кбит/с 3,5

Дополнительная обработка речи всегда ведёт к дальнейшей потере качества. Согласно рекомендациям МСЭ-Т, для международных вызовов величина QDU не должна превышать 14, причём передача разговора по международным магистральным каналам ухудшает качество речи, как правило, на 4 QDU. Следовательно, при передаче разговора по национальным сетям должно теряться не более QDU, поэтому для качественной передачи речи процедур компрессии/декомпрессии желательно применять в сети только один раз. В некоторых странах это является обязательным требованием регулирующих органов по отношению к корпоративным сетям, подключённым к сетям общего пользования.

Наши рекомендации