: Кодеки - Вокодеры с линейным предсказанием

Рассмотрим теперь более широкое понятие - кодеки. Кодек (англ. codec, от coder/decoder -- кодировщик/декодировщик или compressor/decompressor) -- это устройство или программа, способная выполнять преобразование данных или сигнала. Специальные голосовые кодеки как раз и используют вокодерные принципы. Данная глава будет несколько дублировать прошлую, однако ее рассмотрение необходимо с целью понимания общей системы кодеков.

Эффективность использования пропускной способности IP-сети существенным образом зависит от выбора оптимального алгоритма кодирования/декодирования речевой информации - кодека.

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

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

Кодеки этого типа содержат в себе ИКМ или АДИКМ кодек и реализованный цифровым способом вокодер.

На рис. 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% времени, происходит двукратная оптимизация по количеству данных, которые должны быть переданы по линии. Объединение технологии сжатия речи и подавления пауз речи в коммутаторах приводит к уменьшению потока данных в канале до восьми раз.

Современные продукты для IP-телефонии применяют самые разные кодеки, стандартные и нестандартные. Конкурентами являются кодеки GSM (13,5 кбит/с) и кодеки МСЭ-Т серии G, использование которых предусматривается стандартом Н.323 для связи по IP-сети. Единственным обязательным для применения кодеком в Н.323-совместимых продуктах остается стандарт G.711: выдаваемые им массивы данных составляют от 56 до 64 кбит/с. В качестве дополнительных высокопроизводительных кодеков стандарт Н.323 рекомендует G.723 и G.729 - последние способны сжимать оцифрованную 16-разрядную ИКМ-речь длительностью 10 мс всего в 10 байт. Стандарт G.729 уже получил широкое распространение в системах передачи голоса по IP; его поддерживают значительное число производителей продуктов для IP-телефонии.

Похожие статьи




: Кодеки - Вокодеры с линейным предсказанием

Предыдущая | Следующая