Смекни!
smekni.com

Вокодеры с линейным предсказанием (стр. 8 из 9)

На рис. 9 представлена усредненная субъективная оценка качества кодирования речи для вышеперечисленных типов кодеков.


Рис. 9.Усредненная субъективная оценка качества кодирования речи для различных типов кодеков

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

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

Рассмотрим некоторые основные кодеки, используемые в шлюзах IP-телефонии операторского уровня.

Кодек G.711

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


Рис. 11.Нелинейное квантование по уровню

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

Кодек G.726

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

Кодек G.723.1

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

Процесс преобразования требует от DSP 16,4-16,7 MIPS и вносит задержку 37 мс. Кодек G.723.1 широко применяется в голосовых шлюзах и прочих устройствах IP-телефонии. Кодек G.723.1 уступает по качеству кодирования речи кодеку G.729a, но менее требователен к ресурсам процессора и пропускной способности канала.

Кодеки G.729

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

Кодек G.728

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

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

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

Как видно из таблицы, наиболее предпочтительным среди приведенных методов кодирования с точки зрения соотношения качество речи / скорость потока является алгоритм G.723.1.

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

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

Метод компрессии QDU
ADPCM 32 кбит/с 3,5
ADPCM 24 кбит/с 7
LD-CELP 16 кбит/с 3,5
CS-CELP 8 кбит/с 3,5

Дополнительная обработка речи всегда ведет к дальнейшей потере качества. Согласно рекомендациям МСЭ-Т, для международных вызовов величина QDU не должна превышать 14, причем передача разговора по международным магистральным каналам ухудшает качество речи, как правило, на 4 QDU. Следовательно, при передаче разговора по национальным сетям должно теряться не более 5 QDU. Поэтому для качественной передачи речи процедуру компрессии/декомпрессии желательно применять в сети только один раз. В некоторых странах это является обязательным требованием регулирующих органов по отношению к корпоративным сетям, подключенным к сетям общего пользования. Подавление пауз (silence suppression) - важная функция ATM-коммутаторов. Суть технологии подавления пауз заключается в определении различия между моментами активной речи и молчания в период соединения. В результате применения этой технологии генерация ячеек происходит только в моменты активного разговора. Поскольку в процессе типичного разговора по телефону тишина составляет до 60% времени, происходит двукратная оптимизация по количеству данных, которые должны быть переданы по линии. Объединение технологии сжатия речи и подавления пауз речи в коммутаторах приводит к уменьшению потока данных в канале до восьми раз.