Смекни!
smekni.com

Кодеры речи (стр. 9 из 16)

Таблица 3.2

Параметры кодеров

Параметры кодера Кодер
G.729 G.729A G.723.1
Скорость бит, кбит/с 8 8 5,3…6,3
Размер фрейма, мс 10 10 30
Размер подфрейма, мс 5 5 7,5
Алгебраическая задержка, мс 15 15 37,5
Быстродействие, млн. оп./с 20 10 14…20
Объем ПЗУ, байт 5,2 К 4 К 4,4 К
Качество Хорошее Хорошее Хорошее

Для режима 5,3 кбит/с рекомен­дация G.723.1 предусматривает фрей­мы возбуждения длительностью 7,5 мс и также использует четырехимпульсное ACELP-возбуждение кодовой стра­ницы. Для скорости 6,3 кбит/с ис­пользуется технология многоимпульс­ного возбуждения с квантованием и ал­горитмом максимального правдоподо­бия (MP-MLQ). В этом случае пози­ции фреймов группируются в подгруп­пы с четными и нечетными номерами. Для определенного номера импульса из четной последовательности (пятый или шестой в зависимости от того, является ли сам фрейм четным или не­четным) используется последователь­ный многоимпульсный поиск. Похо­жий поиск повторяется для подфрей­мов с нечетными номерами. Для возбуждения выбирается группа с мини­мальными общими искажениями.

На стороне декодера информа­ция кодера с линейным предсказа­нием (LPC) и информация адаптив­ной и фиксированной кодовой книг демультиплексируется и использует­ся для реконструкции выходного сиг­нала. Для этих целей используется адаптивный постфильтр. В случае ко­дера G.723.1 сигнал возбуждения пе­ред прохождением через фильтр син­теза LPC пропускается через LT (long-term — долговременный) постфильтр и ST (short-term — кратковременный) постфильтр.

LD-CELP (Long-Delay CELP). Рекомендация G.728

В Рекомендации содержится опи­сание алгоритма кодирования речевых сигналов на скорости 16 кбит/с с помо­щью линейного предсказания с кодиро­ванием сигнала возбуждения с малой задержкой. Алгоритм LD-CELP опи­сывает работу кодера и декодера.

В алгоритме LD-CELP сохране­на суть метода CELP, представляю­щего собой метод «анализа через син­тез» путем поиска сигналов в кодовой книге. Для получения алгоритмиче­ской задержки порядка 0,625 мс ис­пользуется адаптация предсказателей и уровней сигнала возбуждения по вы­ходу. Передается только индекс сиг­нала возбуждения, найденный в кодо­вой книге. Обновление коэффициен­тов предсказания производится с помо­щью LPC-анализа ранее квантованной речи. Уровень возбуждения обновля­ется с помощью информации, содержа­щейся в ранее квантованном сигнале возбуждения. Размер блока для ада­птации вектора сигнала возбуждения и уровня составляет всего лишь пять отсчетов. Обновление взвешивающего фильтра, учитывающего восприятие, производится с помощью LPC-анализа неквантованной речи.

После выполнения преобразова­ния сигнала ИКМ по закону А или μ в линейный ИКМ-сигнал входной сигнал делится на блоки по пять последова­тельных отсчетов. Для каждого вход­ного блока кодер пропускает каждый из 1024 векторов кодовой книги (хра­нящихся в кодовой книге сигнала воз­буждения) через устройство масштаби­рования уровня сигнала возбуждения и синтезирующий фильтр. Из полу­ченных в результате пропускания всех 1024 векторов-кандидатов квантован­ного сигнала кодер определяет один, минимизирующий величину взвешен­ной по частоте среднеквадратической ошибки относительно вектора входно­го сигнала. 10-битовый индекс, соот­ветствующий наилучшему вектору в кодовой книге, который соответствует наилучшему вектору-кандидату кван­тованного сигнала, передается в деко­дер. На следующем этапе для обно­вления памяти фильтра и подготов­ки к кодированию следующего векто­ра сигнала наилучший кодовый вектор проходит через устройство масштабирования уровня сигнала возбуждения и синтезирующий фильтр. Коэффициенты синтезирующего фильтра и уровень сигнала возбуждения периодически обновляются путем адаптации по выходу, базирующейся на квантованном сигнале, масштабированном по уровню, и сигнале возбуждения.

Индекс в книге векторного квантования (VQ) возбуждения представляет собой единственную информа­цию, которая в явной форме переда­ется из кодера в декодер. Три других типа параметров: уровень сигналa возбуждения, коэффициенты синтезирующего фильтра и коэффициенты взвешивающего фильтра, учитыва­ющего восприятие, обновляются пери­одически. Эти параметры получаются путем адаптации по выходу из сигна­лов, которые появляются до текуще­го вектора сигнала. Уровень сигнала возбуждения обновляется для каждого вектора, а коэффициенты взвешиваю­щего фильтра, учитывающего воспри­ятие, и коэффициенты синтезирующе­го фильтра обновляются для каждых четырех векторов (т.е. для каждых 20 отсчетов или для периода обновления длительностью 2,5 мс). Следует отме­тить, что хотя последовательность об­работки в алгоритме имеет цикл ада­птации, равный четырем векторам (20 отсчетов), емкость основного буфера составляет только один вектор (пять отсчетов). Такая малая емкость буфе­ра позволяет получить задержку при передаче в одном направлении менее 2 мс.

Многополосное кодирование и кодирование с адаптивным преобразованием

Среди методов кодирования с ча­стотным разбиением известны две тех­нологии: многополосное кодирова­ние — SBC (Sub-Band Coding) и ко­дирование с адаптивным преобразо­ванием — АТС (Adaptive Transform Coding). Основной принцип обеих схем — разделение спектра входного на несколько частотных поддиапазо­нов (полос), которые затем кодируют­ся отдельно. В SBC набор фильтров выполнен так, что разбивает входной речевой сигнал обычно на 4-16 широ­ких частотных поддиапазонов (широ­кополосный анализ). В АТС для обес­печения более точных частотных пока­зателей число поддиапазонов увеличе­но до 128-256 (узкополосный анализ).

Многополосное кодирование обыч­но рассматривается как метод коди­рования формы сигнала, который ис­пользует широкополосный кратковре­менный анализ и синтез. После раз­деления речевого спектра на несколь­ко поддиапазонов низшая частота ка­ждого из них приводится к нулю, затем поддиапазон дискретизируется в соот­ветствии с частотой Найквиста (минимальной частотой дискретизации), квантуется, кодируется, мультиплек­сируется и передается. В приемнике поддиапазоны демультиплексируются, декодируются и переводятся обратно в их частотные позиции. Результи­рующие сигналы поддиапазонов затем складываются для получения аппрок­симированного исходного речевого сиг­нала.


Глава 2 IP-телефония

Основные стандарты кодирования речи, применяемые в 1Р-телефонии, приведены в табл. 4.1.

Таблица 4.1

Стандарты ITU-T по кодированию речи, применяемые в IP-телефонии

Стандарт Описание
G.711 Импульсно-кодовая модуляция 64 кбит/с (ИКМ) (А-закон и μ-закон)
G.722 Широкополосные кодеры, работающие на скорости 64, 56 или 48 кбит/с
G.726 Рекомендации по кодерам АДИКМ, которые охватывают G721 и G723
G.727 АДИКМ, работающие на скоростях 40, 32, 24 или 16 кбит/с
G.728 Вокодеры с линейным предсказанием, с кодовым возбуждением, с низкой задержкой, скорость 16 кбит/с (LD-CELP)
G.729 Вокодеры с линейным предсказанием, с алгебраическим кодовым возбуждени­ем, с сопряженной структурой, скорость 8 кбит/с (CS-ACELP)
G.723.1 Низкоскоростные вокодеры для связей мультимедиа, работающие на скорости 6,3 и 5,3 кбит/с

Каждая из при­веденных в таблице рекомендаций ITU может служить основой для передачи речи по Интернету и другим сетям, так как все они обеспечивают низкие ско­рости передачи и достаточно просты в реализации персональным компьюте­ром или в микропроцессорном исполне­нии.

Основной целью проектирования кодеров является уменьшение скоро­сти передачи речи при безусловном сохранении требуемого уровня каче­ства речи для конкретного приложе­ния. Приложения по передаче речи в Интернет или Интранет могут быть либо самостоятельными, либо в фор­ме мультимедиа. Так как мультиме­диа подразумевают наличие несколь­ких средств кодирования речи, для та­ких приложений подразумевается, что поток речевых данных передается по линии связи совместно с другими сиг­налами. Некоторые из таких приложе­ний могут включать:

одновременную передачу речи и видео;

приложения с одновременной ци­фровой передачей речи и данных (DSVD);

одновременную передачу речи и факса.

Особенности функционирования каналов для передачи речевых данных и прежде всего сети Интернет, а также возможные варианты построения си­стем телефонной связи на базе Интер­нет предъявляют ряд специфических требований к речевым кодерам (воко­дерам). Благодаря пакетному прин­ципу передачи и коммутации речевых данных отпадает необходимость коди­рования и синхронной передачи оди­наковых по длительности фрагментов речи.

Наиболее целесообразным и есте­ственным для систем IP-телефонии является применение кодеров с пере­менной скоростью кодирования рече­вого сигнала. В основе кодера речи с переменной скоростью лежит класси­фикатор входного сигнала, определя­ющий степень его информативности и, таким образом, задающий метод коди­рования и скорость передачи речевых данных. Наиболее простым классифи­катором речевого сигнала является де­тектор активности речи (VAD — Voice Activity Detector), который выделяет во входном речевом сигнале активную речь и паузы. При этом фрагменты сиг­нала, классифицируемые как актив­ная речь, кодируются каким-либо из известных алгоритмов (как правило, методом CELP) с типичной скоростью 4…8 кбит/с. Фрагменты, классифи­цированные как паузы, кодируются и передаются с очень низкой скоростью (порядка 0,1.. .0,2 кбит/с) или не пере­даются вообще. Передача минималь­ной информации о паузных фрагмен­тах предпочтительна.