Оригинал материала: https://3dnews.ru./639105

Опус про Opus. Новый кодек — прощай, MP3?

Отдельные открытия, сделанные человеком, оказываются настолько практичными изобретениями, что остаются в повседневной жизни надолго. Например, стандарту цифрового сжатия звука MP3 уже около 20 лет, что по меркам компьютерных технологий — более чем долгий срок. За эти двадцать лет произошло немало открытий и технологических прорывов. Но для цифрового аудио, как это ни странно, пока мало что изменилось. MP3 «забрался» во все устройства, какие только можно, — смартфоны, портативные проигрыватели, DVD-плееры, часы и прочие электронные приборы.

Почему так? Ведь кодирование с потерями — это неизбежное ухудшение качества звука. Простому обывателю вполне может показаться, что у MP3 давно есть альтернативы — FLAC, APE и прочие алгоритмы компрессии аудиоданных с возможностью идентичного восстановления волновой формы после декодирования. Суждение о том, что появление алгоритмов сжатия звука без потерь составит MP3 конкуренцию во всех отношениях, — очень поверхностно. Помимо качества звука, за которое так переживают любители музыкальных коллекций, существует еще немало других объективных причин, по которым MP3 не может быть забыт и заменен принципами сжатия без потерь.

Прежде всего, потому что форматы кодирования звука с потерями используются не только для музыки, но и для передачи голоса через Интернет. Главный козырь MP3 и других механизмов сжатия с потерями — эффективное использование каналов передачи. Чтобы организовать IP-телефонию, необходимо обеспечить внятную речь как можно большему числу абонентов. При этом качество звука уходит на второй план. Кроме этого, очень важна возможность «мгновенного» декодирования потока, без которого затрудняется синхронный обмен информацией. В данном случае использование (даже теоретически) алгоритмов сжатия без потерь приводило бы к сильным временным задержкам, и интерактивное общение было бы просто невозможным.

Тем не менее MP3 не лишен недостатков. Не секрет, что низкий битрейт «съедает» детали звука, наделяя его к тому же целым набором неприятных артефактов — призвуками, свистом и звоном, разного рода искажениями. При использовании MP3 в IP-телефонии наблюдаются большие временные задержки из-за необходимости дополнительной буферизации данных.

#Opus: новое слово в цифровом звуке

Новый открытый кодек Opus лишен самых серьезных недостатков MP3, при этом он сохранил все достоинства «народного» кодека и даже приумножил их.

Структура Opus позволяет ему эффективно справляться со звуковыми артефактами. Для этого была предложена многоступенчатая архитектура обработки аудиосигнала. Основной аргумент, который говорит в пользу применения нового кодека для IP-телефонии, — низкая временная задержка.

Основную работу над созданием уникального алгоритма сжатия вели несколько человек: Jean-Marc Valin (Xiph.Org, Octasic, Mozilla Corporation), Koen Vos (Skype) и Timothy B. Terriberry (Xiph.Org, Mozilla Corporation). Не обошлось и без вездесущей Google — по словам самих создателей Opus, интернет-гигант оказал значительную поддержку при разработке и тестировании кодека.

Один из создателей кодека Opus — Jean-Marc Valin

Движок нового кодека основывается на двух независимых стандартах, предложенных Xiph.Org Foundation и Skype Technologies S.A. (принадлежит Microsoft). Новый кодек является гибридным решением, он сочетает в себе технологии кодеков CELT (Constrained Energy Lapped Transform) и SILK. Последний используется для реализации связи в Skype.

#Как работает Opus

Принцип работы кодека не нов, но оригинален и главное — позволяет получить очень хороший результат на выходе. Поступивший сигнал кодируется SILK или CELT избирательно.

Первый движок (SILK) применяется для компрессии голоса, а также в тех случаях, когда требуется эффективно расходовать пропускную способность канала связи. Обрабатываемый аудиосигнал анализируется кодеком на предмет наличия человеческой речи. Голосовые составляющие отделяются от прочих звуков, после чего кодек выполняет анализ частотной характеристики звука, понижая уровень дискретизации для данных, содержащих голосовую информацию, то есть речь. Затем Opus исследует присутствующие шумы и оптимизирует сигнал для определенного битрейта. Далее кодек преобразовывает сигнал с помощью фильтра предварительной очистки. Используя речевые кадры, модуль предсказания частоты аудиосигнала вносит изменения в последующие кадры, после чего частотное квантование нормирует частоты человеческой речи. Далее следует важный этап обработки звука — устранение искажений, возникающих при недостаточно высоком битрейте. После этого используется модуль формирования шума квантования, который снижает шумы внутри рабочей полосы, вытесняя их за пределы рабочего диапазона. На заключительном этапе интервального кодирования SILK работает с дискретными величинами, которые могут принимать ограниченное число значений, — осуществляется покадровый вывод сигнала.

В процессе кодирования аудиоданных с высоким качеством, например музыки, задействуется модуль CELT. Его механизм схож с принципом работы наиболее популярных кодеков с потерями и завязан на дискретных косинусных преобразованиях, а также на «оптимизации» звука. Последняя состоит в том, что из сигнала удаляются составляющие, которые не несут полезной нагрузки для слуха человека, — до кодирования он их или не слышит, или слышит с большим трудом.

Если заглянуть в настройки кодирования, например в программе EZ CD Audio Converter (бывший Easy CD-DA Extractor), можно увидеть, что новый кодек предлагает выбрать режим сжатия — звук или музыку. Эта настройка и определяет приоритет того или иного алгоритма кодирования Opus.

Opus поддерживает частоты дискретизации от 8 до 48 кГц. Кодирование звука возможно в диапазоне битрейта 6—510 кбит/с. Длительность кадров варьируется от 2,5 до 20 мс.

Кодек осуществляет кодирование в режимах моно и стерео, используя технологию постоянного и переменного битрейта, а также поддерживает компрессию до 255 каналов.

#Opus: наглядная победа

Универсальность структуры кодека Opus позволила ему на невысоком битрейте обойти самых главных конкурентов — Apple HE-AAC, Nero HE-AAC, Vorbis и AAC LC. На данной диаграмме вы можете наблюдать, насколько лучше параметры задержки у нового кодека по сравнению с конкурентами.

А это — график, демонстрирующий превосходство Opus над другими кодеками по качеству звука. Результаты тестирования говорят о том, что аудио, декодированное с помощью Opus, в большинстве случаев более полно восстанавливает исходную картину звука — на разных битрейтах и на разной частоте. Под терминами fullband stereo и narrowband подразумеваются граничные частоты дискретизации.

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

#Софт для работы с Opus

Разработчики программного обеспечения торопятся выпустить обновления с поддержкой кодека Opus. Такие популярные утилиты для работы со звуком, как EZ CD Audio Converter, foobar2000, AIMP, VLC Media Player, уже могут работать с файлами в этом формате. Новый кодек принят на вооружение и при организации потокового вещания посредством Icecast, он включен в K-Lite Codec Pack и фильтры LAV.

В ближайших версиях альтернативной прошивки для портативных аудиоустройств Rockbox также появится поддержка Opus. Любители смогут слушать музыку и аудиокниги на плеерах iPod, Archos и прочих. На портативных устройствах под управлением Android также можно будет слушать аудио через Rockbox, установив соответствующее приложение RaaA (Rockbox as an Application).

На данный момент новый кодек уже поддерживается в разработках Mozilla — Firefox и Thunderbird. Очевидно, что поддержку Opus скоро можно будет увидеть и в других браузерах. В ближайшее время он появится и в Skype.

Opus: палки в колесах

Очевидное превосходство качества, которое показывает Opus при кодировании, еще не означает его безоговорочной победы. Данный кодек пока не избавился от всех багов и только в сентябре этого года прошел сертификацию в IETF (Internet Engineering Task Force) как стандарт аудиокодека для использования в Интернете.

Кроме того, новой разработке еще предстоит «пободаться» с многочисленными претензиями и судебными исками, которые следует ожидать в будущем. Opus имеет статус royalty-free, то есть за его использование не нужно платить никаких отчислений правообладателям. Появление такого продукта, понятное дело, невыгодно многим конкурентам.

Первые «бузотеры» уже высказались против нового кодека — компании Qualcomm и Huawei заявили о том, что новая разработка нарушает принадлежащие им патенты. Разработчики Opus дали комментарии по этому поводу, сообщив, что они не нарушили авторских прав и более того — они ожидали появления подобных заявлений и готовы отстаивать свою правоту.

#Заключение

Спустя 20 лет существования MP3 человек все так же плохо слышит разницу между оригинальным звуком и звуком, который претерпел потери в результате компрессии. Тем не менее он всячески ищет способы улучшить качество оцифрованного звука и минимизировать потери при одинаковом битрейте.

Кодек Opus, безусловно, ждет большое будущее. Низкий уровень искажений, а также минимальные по сравнению с конкурирующими алгоритмами временные задержки — все это делает Opus идеальным для интеграции данной технологии в сфере IP-телефонии и трансляции речи.

Впрочем, скорее всего, такого размаха, который сопутствовал победоносному шествию MP3, «Опусу» вряд ли удастся достичь. В свое время появление кодека MP3 стало настоящей революцией в сфере хранения и передачи звука. Сегодня новый кодек может лишь предложить более эффективное использование каналов передачи на низких скоростях. Что же касается музыкальных предпочтений, то, полагаем, любители портативного звука останутся стоять на своем — звук должен быть без потерь. Да и сами разработчики это не отрицают.

В презентации Opus сказано буквально следующее: «Кодек может использоваться для любых целей, за исключением Lossless-сохранения (для этого используйте FLAC) и за исключением кодирования с ультранизким битрейтом (для этого используйте codec2)».

Аппаратная поддержка Opus будет обязательно. Ведь показатели у нового кодека отличные, а значит, в скором времени можно будет ожидать использования новой технологии в беспроводных наушниках и портативных плеерах, которые мы по-прежнему будем по старинке называть MP3-плеерами.



Оригинал материала: https://3dnews.ru./639105