С какой скоростью для кодирования речи используется речевой кодек acelp
Одним из важных факторов эффективного использования пропускной способности IP-канала является выбор кодека.
Все существующие сегодня типы речевых кодеков по принципу действия можно разделить на три группы:
1. Кодеки формы сигнала. Это кодеки с импульсно-кодовой модуляцией (ИКМ) и адаптивной дифференциальной импульсно-кодовой модуляцией (АДИКМ), использующиеся сегодня в системах традиционной телефонии. В большинстве случаев, представляют собой сочетание АЦП/ЦАП.
Большинство кодеков, используемых в IP-телефонии, описаны рекомендациями семейства «G» (рис. 4.2).
Рис. 4.2. Стандарты для кодирования речевых сигналов
Все методы кодирования, основанные на определенных предположениях о форме сигнала, не подходят при передаче сигнала с резкими скачками амплитуды. Именно такой вид имеет сигнал, генерируемый модемами или факсимильными аппаратами, поэтому аппаратура, поддерживающая сжатие, должна автоматически распознавать сигналы факс-аппаратов и модемов и обрабатывать их иначе, чем голосовой трафик. Многие методы кодирования берут свое начало от метода кодирования с линейным предсказанием LPC (Linear Predicative Coding). В качестве входного сигнала в LPC используется последовательность цифровых значений амплитуды, но алгоритм кодирования применяется не к отдельным цифровым значениям, а к определенным их блокам. Для каждого такого блока значений вычисляются его характерные параметры: частота, амплитуда и ряд других. Именно эти значения и передаются по сети. При таком подходе к кодированию речи, во-первых, возрастают требования к вычислительным мощностям специализированных процессоров, используемых для обработки сигнала, а во-вторых, увеличивается задержка при передаче, поскольку кодирование применяется не к отдельным значениям, а к некоторому их набору, который перед началом преобразования следует накопить в определенном буфере.
Важно, что задержка в передаче речи связана не только с необходимостью обработки цифрового сигнала (эту задержку можно уменьшать, увеличивая мощность процессора), но и непосредственно с характером метода сжатия. Метод кодирования с линейным предсказанием LPC позволяет достигать очень больших степеней сжатия, которым соответствует полоса пропускания 2,4 или 4,8 кбит/с. Однако качество звука здесь сильно страдает, поэтому в коммерческих приложениях он не используется, а применяется в основном для ведения служебных переговоров. Более сложные методы сжатия речи основаны на применении LPC в сочетании с элементами кодирования формы сигнала. В этих алгоритмах используется кодирование с обратной связью, когда при передаче сигнала осуществляется оптимизация кода. Закодировав сигнал, процессор пытается восстановить его форму и сличает результат с исходным сигналом, после чего начинает варьировать параметры кодировки, добиваясь наилучшего совпадения. Достигнув такого совпадения, аппаратура передает полученный код по линиям связи, а на противоположном конце происходит восстановление звукового сигнала. Ясно, что для использования такого метода требуются еще более серьезные вычислительные мощности.
Современные продукты для 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.
Процесс преобразования требует от DSP 16,4-16,7 MIPS (Million Instructions Per Second) и вносит задержку 37 мс. Данный кодек уступает по качеству кодирования речи кодеку G.729a, но менее требователен к ресурсам процессора и пропускной способности канала.
Рассмотрим кодек G.729.
Встречаются также системы IP-телефонии, применяющие кодеки G.726 и G.728.
Рассмотрим кодек G.726.
Рассмотрим кодек G.728.
Основные характеристики рассмотренных кодеков приведены в таблице 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, поэтому для качественной передачи речи процедур компрессии/декомпрессии желательно применять в сети только один раз. В некоторых странах это является обязательным требованием регулирующих органов по отношению к корпоративным сетям, подключённым к сетям общего пользования.
Статьи к прочтению:
КОДИРОВАНИЕ ПСИХИКИ
Похожие статьи:
Общение абонентов часто проходит в условиях высокого уровня окружающего шума. В отличие от пользователей сотовой связи, которые обычно могут выбирать подходящее место для ведения переговоров, абоненты транкинговых систем из различных служб безопасности не располагают такой возможностью: им нередко приходится работать на фоне завывания сирен, выстрелов, переговоров по громкой связи и т.п. При создании оборудования TETRA эта особенность была учтена. Оно обеспечивает необходимые в подобной обстановке большую мощность выходного аудиосигнала, его малое искажение и четкость речи. Хорошее качество передаваемой речи обусловлено использованием кодека TETRA (рисунок 1).
Применяемый в стандарте TETRA алгоритм кодирования/декодирования базируется на методе линейного предсказания с многоимпульсным кодовым возбуждением (Code-Excited Linear Predictive, CELP), который дополнен специальными кодовыми книгами алгебраической структуры. Этот механизм кодирования получил название Algebraic CELP (ACELP).
Рис.1. Схема работы речевого кодека в системах TETRA: а) кодирование, б) декодирование
Кодек, работающий по алгоритму ACELP, сжимает сегмент речевого сигнала длительностью 30 мс (16 выборок х 8 кГц = 128 кбит/с) в соответствии с набором правил кодовой книги и формирует набор закодированных речевых сигналов, передаваемых со скоростью речевого кодека — 4,567 кбит/с . Для достижения необходимой чистоты речи при передаче сигнала по радиоканалу со скоростью 7,2 кбит/с используются также методы прямой коррекции ошибок (Forward Error Correction, FEC) и циклического избыточного кодирования (Cyclic Redundancy Code, CRC). На стороне приема декодер производит аналогичные действия, но в обратном порядке (рисунок 2 ).
Рис.2. Речевой кодек TETRA
- оценки важности элементов речи (Speech Importance Factor, SIF);
- установления комфортного уровня шума (Comfort Noise Function, CNF);
- заимствования кадров (Frame Stealing Function, FSF).
Сценарий их «работы» достаточно прост. SIF анализирует каждый речевой кадр, чтобы определить, насколько ухудшится качество передаваемой речи в результате его потери. В соответствии с результатами анализа этому кадру присваивается необходимый уровень защиты (нулевой, т.е. низкий, средний или высокий). Функция CNF генерирует специальный кадр, используемый для замены некачественных кадров речи либо кадров, служащих для передачи управляющих сигналов.
Несмотря на кажущуюся простоту механизма кодека, реализовать его было непросто, поскольку для обеспечения требуемой скорости канала TETRA (7,2 кбит/с) и предусмотренных стандартом TETRA показателей качества речи производительность кодека должна составлять не менее 15 MIPS. Соответственно, и аппаратные решения TETRA достаточно сложны.
Скорость передачи, которую предусматривают имеющиеся сегодня узкополосные кодеки, лежит в пределах 1.2-64 кбит/с. Естественно, что от этого параметра прямо зависит качество воспроизводимой речи. Существует множество подходов к проблеме определения качества. Так, например, для прослушивания экспертам предъявляются разные звуковые фрагменты - речь, музыка, речь на фоне различного шума и т. д. Искажения оценивают путем опроса разных групп людей по пятибалльной шкале единицами субъективной оценки MOS (Mean Opinion Score ). Оценки интерпретируют следующим образом:
- 4-5 - высокое качество; аналогично качеству передачи речи в ISDN , или еще выше;
- 3,5-4 - качество ТфОП (toll quality); аналогично качеству речи, передаваемой с помощью кодека АДИКМ при скорости 32 кбит/с. Такое качество обычно обеспечивается в большинстве телефонных разговоров. Мобильные сети обеспечивают качество чуть ниже toll quality;
- 3-3,5 - качество речи по-прежнему удовлетворительно, однако его ухудшение явно заметно на слух;
- 2,5-3 - речь разборчива, однако требует концентрации внимания для понимания. Такое качество обычно обеспечивается в системах связи специального применения (например, в вооруженных силах).
В рамках существующих технологий качество ТфОП (toll quality) невозможно обеспечить при скоростях менее 5 кбит/с.
При диалоге один его участник говорит в среднем только 35 процентов времени. Таким образом, если применить алгоритмы, которые позволяют уменьшить объем информации, передаваемой в периоды молчания, то можно значительно сузить необходимую полосу пропускания. В двустороннем разговоре такие меры позволяют достичь сокращения объема передаваемой информации до 50 %, а в децентрализованных многоадресных конференциях (за счет большего количества говорящих) - и более. Нет никакого смысла организовывать многоадресные конференции с числом участников больше 5-6, не подавляя периоды молчания.
Генератор CNG позволяет избежать таких неприятных эффектов.
Большинство узкополосных кодеков обрабатывает речевую информацию блоками, называемыми кадрами ( frames ), и им необходимо производить предварительный анализ отсчетов, следующих непосредственно за отсчетами в блоке, который они в данный момент кодируют.
Размер кадра важен, так как минимальная теоретически достижимая задержка передачи информации (алгоритмическая задержка) определяется суммой этого параметра и длины буфера предварительного анализа.
С другой стороны, кодеки с большей длиной кадра более эффективны, так как здесь действует общий принцип: чем дольше наблюдается явление (речевой сигнал), тем лучше оно отображается на объеме дополнительной служебной информации, которая добавляется к кадру.
Потери пакетов являются неотъемлемым атрибутом IP-сетей. Но потери пакетов и потери кадров не обязательно напрямую связаны между собой, так как существуют подходы, например, применение кодов с исправлением ошибок ("forward error correction "), позволяющие уменьшить число потерянных кадров при заданном числе потерянных пакетов. Необходимая для этого дополнительная служебная информация распределяется между несколькими пакетами, так что при потере некоторого числа пакетов кадры могут быть восстановлены.
Кодеры типа G.723.1 разработаны так, что они функционируют без существенного ухудшения качества в условиях некоррелированных потерь до 3 % кадров, однако при превышении этого порога качество ухудшается катастрофически.
3.8. Кодеки IP-телефонии
Наибольшее распространение получили кодеки следующих типов.
Кодек G.711 - один из первых цифровых кодеков речевых сигналов, который является минимально необходимым. Это означает, что любое устройство VoIP должно поддерживать этот тип кодирования.
Рекомендация G.723.1 утверждена ITU -T в ноябре 1995 г. Кодек G.723.1 является базовым для приложений IP-телефонии .
Кодек G.723.1 предусматривает две скорости передачи: 6.3 кбит/с и 5.3 кбит/с. Режим работы может меняться динамически от кадра к кадру.
Для этих кодеков оценка MOS ( Mean Opinion Score ) составляет 3,9 в режиме 6.3 кбит/с и 3,7 в режиме 5.3 кбит/с.
Кодек G.726 обеспечивает кодирование цифрового потока со скоростью 40, 32, 24 или 16 кбит/с, гарантируя оценки MOS на уровне 4,3 (32 кбит/с), что принимается за эталон уровня качества телефонной связи (toll quality ). Однако в приложениях IP-телефонии этот кодек практически не используется, так как он не обеспечивает достаточной устойчивости к потерям информации (см. выше).
Кодек G.728 специально разрабатывался для оборудования уплотнения телефонных каналов, при этом было необходимо обеспечить возможно малую величину задержки (менее 5 мс), чтобы исключить необходимость применения эхокомпенсаторов.
Кодек G.729 очень популярен в приложениях передачи речи по сетям Frame Relay . Кодек использует кадр длительностью 10 мс и обеспечивает скорость передачи 8 кбит/с. Однако для кодера необходим предварительный анализ сигнала продолжительностью 5 мс.
Существуют две разновидности кодека:
Количественными характеристиками ухудшения качества речи являются единицы QDU ( Quantization Distortion Units): 1 QDU соответствует ухудшению качества при оцифровке с использованием стандартной процедуры ИКМ; значения QDU для основных методов компрессии приведены в таблице 3.2.
Дополнительная обработка речи всегда ведет к дальнейшей потере качества. Согласно рекомендациям МСЭ-Т, для международных вызовов величина QDU не должна превышать 14 , причем передача разговора по международным магистральным каналам ухудшает качество речи, как правило, на 4 QDU . При передаче разговора по национальным сетям должно теряться не более 5 QDU . Поэтому для качественной передачи речи процедуру компрессии/декомпрессии желательно применять в сети только один раз. В некоторых странах это является обязательным требованием регулирующих органов по отношению к корпоративным сетям, подключенным к сетям общего пользования.
Современная аппаратура IP-телефонии применяет разные кодеки, как стандартные, так и нестандартные. Конкурентами являются кодеки GSM (13,5 кбит/с) и кодеки МСЭ-Т серии G, использование которых предусматривается стандартом H.323 для связи по IP -сети.
3.9. Оценка качества воспринимаемой информации
Значения MOS для различных стандартов кодеров приведены в таблице 3.3.
В каналах Интернета важными для IP-телефонии параметрами являются следующие:
Для кодирования (информационного уплотнения) речевых сигналов в стандарте TETRA используется кодер с линейным предсказанием и многоимпульсным возбуждением от кода - CELP (Code Excited Linear Prediction). Данный метод кодирования основан на линейной авторегрессионной модели процесса формирования и восприятия речи и входит в группу т. н. методов анализа через синтез, реализующих современные и эффективные алгоритмы информационного уплотнения речевых сигналов. Алгоритмы данного класса занимают промежуточное положение между кодерами формы сигнала, в которых сохраняется форма колебания речевого сигнала в процессе его дискретизации и квантования, и параметрическими вокодерами, основанными на процедурах оценки и кодирования небольшого числа параметров речи, объединяя преимущества каждого из них.
Линейная авторегрессионная модель процесса формирования речевых сигналов с локально постоянными на интервалах 10-30 мс параметрами получила в настоящее время наибольшее распространение. Для этой модели:
где М - порядок модели, s(n) - последовательность отсчетов речевого сигнала, a(m) - коэффициенты линейного предсказания, характеризующие свойства голосового тракта, а x(n) - порождающая последовательность или сигнал возбуждения голосового тракта. Авторегрессионная модель речевого сигнала описывает его с достаточно высокой степенью точности и позволяет применять развитый математический аппарат линейного предсказания. При этом обеспечивается более высокое качество декодированной речи, устойчивость к входному акустическому шуму и ошибкам в канале связи, чем в системах с иными принципами кодирования.
В рамках данной модели наиболее перспективными методами кодирования считаются методы анализа через синтез с использованием многоимпульсного возбуждения от кода. Новизна многоимпульсного возбуждения [7] заключается в том, что в сигнале остатка линейного предсказания выбираются такие его значения, которые наиболее важны для повышения качества синтезированной речи. При этом используемая в процедуре анализа через синтез схема кодирования, помимо учета ошибок квантования, включает критерии субъективной оценки качества речевого сигнала, что обеспечивает естественное звучание синтезированной речи.
Методы анализа через синтез используют синтезатор (декодер) речевого сигнала как составную часть устройства кодирования. При этом задача анализа сводится к процедуре оценки передаваемых в канал связи параметров речи, проводимой в соответствии с некоторым критерием рассогласования между исходным и декодированным сигналами. Для учета специфики слухового восприятия в качестве критерия рассогласования обычно используется взвешенная по частоте квадратическая ошибка
где S(f) и Sq(f) - преобразование Фурье исходного и синтезированного речевых сигналов, а W(f) - весовая функция. Принимая во внимание важность для восприятия речи не только формант, но и межформантных областей, для алгоритмов анализа речи через синтез Этолом была предложена весовая функция следующего вида
где A -1 (z) - синтезирующий фильтр, а - параметр, регулирующий энергию ошибки или шум квантования. Фактически, при таком взвешивании подчеркивается ошибка в межформантных областях и тем самым обеспечивается более равномерное по частоте распределение отношения мощности полезного сигнала к мощности ошибки кодирования.
В алгоритмах кодирования с анализом через синтез повышение эффективности информационного уплотнения речевых сигналов производится, преимущественно, за счет сокращения избыточности последовательности x(n), которая осуществляет возбуждение синтезирующего фильтра A -1 (z) линейного предсказания, формирующего огибающую сигнала, с коэффициентом передачи
Для этой цели применяется также дополнительный фильтр с характеристикой
с одним коэффициентом предсказания gp и задержкой на период основного тона T. Он выполняет функции генератора квазипериодических колебаний голосовых связок при произношении вокализованных звуков.
В зависимости от способа описания сигнала x(n), поступающего на вход фильтра (7.5), можно выделить алгоритмы кодирования с возбуждением прореженной последовательностью импульсов - MPLP (Multi Pulses Linear Prediction), с самовозбуждением - SELP (Self Excited Linear Prediction), и наконец, с возбуждением от кода - CELP. Экспериментально установлено, что кодовое возбуждение обеспечивает наиболее высокое качество декодированного речевого сигнала, в том числе и при наличии входных акустических помех.
Метод CELP был предложен Этолом и Шредером в 1984 г. Наиболее эффективно применение этого метода при передаче речевого сигнала в диапазоне скоростей от 4 до 16 Кбит/с.
Базовая структурная схема передающей (а) и приемной (б) частей CELP-кодера показана на рис. 7.1.
Рис. 7.1. Структурная схема передающей и приемной частей CELP-кодера.
По существу, в алгоритме CELP производится векторное квантование последовательности x(n), т. е. позиции импульсов и их амплитуды в сигнале многоимпульсного возбуждения оптимизируются одновременно. При этом отрезок (сегмент) сигнала возбуждения выбирается из предварительно сформированной постоянной совокупности - кодовой книги, содержащей достаточно большое количество реализаций, например, некоррелированного гауссовского шума. Выбранная реализация усиливается и подается на вход цепочки фильтров (7.5) и (7.4).
Поиск оптимальных значений gp и T синтезатора основного тона, коэффициента усиления и номера элемента кодовой книги осуществляется посредством анализа через синтез. В целом, в канал связи передаются номер (индекс) элемента кодовой книги с соответствующим коэффициентом усиления, параметры синтезатора основного тона, а также коэффициенты линейного предсказания, характеризующие состояние голосового тракта.
2. Структура кодера TETRA
В стандарте TETRA используется CELP-кодер со скоростью преобразования 4,8 Кбит/с. На рис. 7.2 показана упрощенная блок-схема декодера (синтезатора), используемого в CELP-кодере TETRA.
Рис. 7.2. Блок-схема декодера речевого сигнала в стандарте TETRA.
Основными узлами схемы декодера являются 2 синтезирующих фильтра с большой и малой постоянной времени и алгебраическая кодовая книга.
Фильтр с большой постоянной времени выполняет функцию долговременного предиктора (Long Term Preductor), моделирует квазипериодичность (долговременные корреляции) речевого сигнала и имеет характеристику (7.5). Он выполнен на основе адаптивной кодовой книги, содержащей сигналы возбуждения и реализующей генерацию квазипериодических колебаний голосового тракта.
Фильтр с малой постоянной времени выполняет функцию кратковременного предиктора (Short Term Preductor), моделирует кратковременные корреляции, т. е. корреляции между отсчетами речевого сигнала, и имеет характеристику (7.4) с порядком предсказывающего устройства, соответствующим M=10. В синтезаторе TETRA используется весовая функция (7.3) со значением коэффициента γ=0,85.
Алгебраическая (постоянная) кодовая книга содержит совокупность векторов возбуждения, представляющих собой последовательности с белым гауссовским распределением с нулевым средним значением и единичной дисперсией. Она служит для реализации первого этапа генерации возбуждающего сигнала. На втором этапе производится коррекция возбуждающего сигнала путем добавления к нему данных из адаптивной кодовой книги. Сформированная в итоге возбуждающая последовательность поступает на вход синтезирующего фильтра A -1 (z), где вычисляются значения выходного речевого сигнала в соответствии с выражением (7.1).
В кодере TETRA производится оценка М=10 коэффициентов линейного предсказания и анализ возможных значений параметра синтезатора (индекса kc и коэффициента усиления gc алгебраической кодовой книги и индекса kp и коэффициента усиления gp адаптивной кодовой книги), целью которого является минимизация взвешенной ошибки рассогласования между входным и синтезированным речевыми сигналами. Полученные при этом оптимальные параметры синтезатора квантуются и передаются в канал связи. Обработка сигналов в кодере и декодере производится по блокам. Длительность основного блока составляет 30 мс, что соответствует 240 отсчетам при частоте дискретизации 8 кГц. Для каждого такого блока формируется кадр передаваемой в канал связи информации объемом 137 бит, что обеспечивает скорость передачи информации 4567 бит/с. Оценка коэффициентов линейного предсказания выполняется один раз на всем блоке, а оптимизация остальных параметров синтезатора выполняется на сегментах длительностью 60 отсчетов, т. е. 4 раза на блок. Поразрядное распределение информации в передаваемом кадре приведено в табл. 7.1.
В ходе эксперимента была опрошена группа независимых слушателей, которые проводили оценку качества кодеков. Градация оценок находилась в диапазоне от 1 до 5. Ниже представлены результаты проведенного анкетирования.
Кодирование/декодирование: мужской голос
Рассмотрим кодирование мужского голоса. Согласно данным эксперимента, во всех группах скоростей лучшим по качеству был признан кодек Opus.
Оценка качества кодирования/декодирования мужского голоса
Источник: TrueConf, 2012
В группе 16 Кбит/с явным аутсаудером является кодек g.729a: при кодировании отчетливо слышны искажения, при этом качество звука явно хуже, чем при использовании остальных кодеков.
Оценка качества кодирования/декодирования мужского голоса: расшифровка*
16 кбит/с | 24 кбит/с | 32 кбит/с | ||||
Средняя оценка качества | Скорость код-я/ декод-я, ms | Средняя оценка качества | Скорость код-я / декод-я, ms | Средняя оценка качества | Скорость код-я/ декод-я | |
SPEEX | 4,0 | 2673 / 382 | 3,75 | 3677 / 354 | 4,5 | 4685 / 303 |
ISAC | 3,0 | 597 / 182 | 4,25 | 543 / 168 | 4,4 | 636 / 189 |
OPUS | 4,5 | 1310 / 96 | 5,0 | 1406 / 167 | 4,75 | 1364 / 142 |
G.729.a | 2,75 | 346 / 78 | - | - | - | - |
G.722.1 | - | - | 4,6 | 26 / 32 | - | - |
* В данном опыте был использован мужской дикторский голос длительностью 40 секунд с частотой дискретизации 16000 Гц (категория wideband)
Источник: TrueConf, 2012
Тем не менее, это самый быстрый кодек в данной категории. Наихудшие показатели производительности показал SPEEX при среднем качестве.
Кодек Opus и другие альтернативы
Варианты возможных HD-рекомендаций кодирования речи для коммуникации в интернете уже более 3 лет обсуждаются на международном уровне в одной из рабочих групп IETF (Internet Engineering Task Force), объединяющей разработчиков различных интернет-приложений и производителей оборудования связи. SPIRIT входит в эту рабочую группу.
В группе 32 Кбит/с участвовало только 3 кодека. Неизменно лучшим оказался Opus. iSAC и SPEEX показали приблизительно одинаковые результаты по оценке за качество кодирования.
Кодирование/декодирование: женский голос
Рассмотрим данные обработки женского голоса. В первых двух категориях результаты сравнения получились отличными от "мужской" категории.
Оценка качества кодирования/декодирования женского голоса
Источник: TrueConf, 2012
В категориях 16 кбит/с и 24 кбит/с наихудшие результаты по качеству показал iSAC. При сжатии этим кодеком семплов с участием женского голоса на высоких тональностях отчетливо слыше треск. Данные артефакты присутствуют и при использовании SPEEX, но они не так явно выражены.
Оценка качества кодирования/декодирования женского голоса: расшифровка*
16 кбит/с | 24 кбит/с | 32 кбит/с | ||||
Средняя оценка качества | Скорость код-я/ декод-я, ms | Средняя оценка качества | Скорость код-я / декод-я, ms | Средняя оценка качества | Скорость код-я/ декод-я | |
SPEEX | 3,75 | 5451 / 721 | 4,0 | 5849 / 691 | 4,25 | 8537 / 753 |
ISAC | 3,0 | 1022 / 358 | 3,7 | 1191 / 487 | 4,25 | 1203 / 386 |
OPUS | 4,5 | 2512 / 231 | 4,75 | 2618 / 214 | 5,0 | 2611 / 200 |
G.729.a | 3,9 | 611 / 154 | - | - | - | - |
G.722.1 | - | - | 4,4 | 61 / 59 | - | - |
* В данном опыте был использован профессиональный дикторский голос, длительностью 1 мин 13 секунд, с частотой дискретизации 16000 Гц (категория wideband).
Источник: TrueConf, 2012
Неожиданно g.729a обогнал и SPEEX и iSAC в категории 16 кбит/с, закодировав женский голос без ощутимых артефактов. Победителем во всех категориях снова оказался Opus.
С точки зрения производительности результаты по скорости кодирования/декодирования подобны полученным при работе с мужским голосом.
Итоги и рекомендации
В целом на основе результатов исследования можно сделать вывод о том, что в категории скоростей «более 24-х кбит/с» рекомендуется использовать Opus . Он имеет высокое качество и приемлемую скорость кодирования/декодирования.
В свою очередь, в категории "от 16 до 24 кбит/с" рекомендуется использовать G.722.1 как самый быстрый из всех при хорошем качестве. Если требования к производительности не критичны, то здесь также можно использовать Opus.
По данным эксперимента, в категории "до 16 кбит/с" рекомендуется использовать Opus, который обеспечивает самое высокое качество звука.
Исследование также показало, что кодек SPEEX не рекомендуется использовать в связи с большой вычислительной нагрузкой, а ISAC не стоит использовать при кодировании женского голоса.
Читайте также: