Разделы

Телеком Инфраструктура

Передача речи: выбираем оптимальный кодек

В любых ВКС или VoIP-сервисах при передаче голоса для его шифрования применяют кодеки. Представленные на рынке варианты используются и в определенной степени поддерживаются компаниями-поставщиками услуг, однако, несмотря на многочисленные попытки, к единому стандарту пока прийти не удалось. Какой же кодек в тех или иных условиях справляется быстрее и качественнее? Рассмотрим результаты эксперимента.

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

Читать далее

В группе 24 Кбит/с аутсайдером по всем параметрам оказался SPEEX. Суммарное время кодирования/декодирования для него достигло 4 секунд. По качеству он занял последнюю позицию. Самым быстрым оказался G.722.1 – он значительно быстрее всех остальных смог справиться с кодированием/декодированием, при этом качество звука высокое. Производительность кодека Opus при изменении битрейта осталась практически прежней, при этом качество звука оказалось неотличимым от эталона. Это делает Opus самым качественным кодеком в данной номинации.

В группе 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.

8 задач, чтобы перезапустить инженерную школу в России
импортонезависимость

С точки зрения производительности результаты по скорости кодирования/декодирования подобны полученным при работе с мужским голосом.

Итоги и рекомендации

В целом на основе результатов исследования можно сделать вывод о том, что в категории скоростей «более 24-х кбит/с» рекомендуется использовать Opus . Он имеет высокое качество и приемлемую скорость кодирования/декодирования.

В свою очередь, в категории "от 16 до 24 кбит/с" рекомендуется использовать G.722.1 как самый быстрый из всех при хорошем качестве. Если требования к производительности не критичны, то здесь также можно использовать Opus.

По данным эксперимента, в категории "до 16 кбит/с" рекомендуется использовать Opus, который обеспечивает самое высокое качество звука.

Исследование также показало, что кодек SPEEX не рекомендуется использовать в связи с большой вычислительной нагрузкой, а ISAC не стоит использовать при кодировании женского голоса.

Михаил Готальский