nestormedia.com nestorexpo.com nestormarket.com nestorclub.com
на главнуюновостио проекте, реклама получить rss-ленту

Opus и MP3: вместо или вместе?


Opus и MP3: вместо или вместе?
В Сети все чаще можно встретить упоминание нового аудиокодека под названием Opus. Уже достоверно известно, что в скором времени он будет применен в очередной версии Skype, а в дальнейшем может даже вытеснить из употребления формат MP3. То есть Opus предельно универсален – он в равной степени успешно кодирует человеческий голос для передачи посредством VoIP и компрессировать музыку, создавая небольшие, но качественно звучащие аудиофайлы. То есть выполняет, по сути, противоположные задачи.

Звук в Сети

Два десятка лет назад появление кодека MP3 стало настоящей революцией в сфере хранения и передачи звука. Формат аудиофайлов MP3 быстро стал стандартом для Сети, а в дальнейшем был реализован в самых разных компьютерных устройствах – от смартфонов и портативных медиаплееров до DVD-плееров, наручных часов и прочей бытовой электроники.

Но в чем секрет долголетия MP3? Ведь мы понимаем: компрессия звука при помощи MP3 – это кодирование с потерями. То есть неизбежное ухудшение качества звука. Однако практика показала: слух у большинства людей не настолько «музыкальный», чтобы почувствовать искажения, возникающие при компрессии. Особенно если выставлен «щадящий» битрейт – 128 кбит/с или выше.

В формате MP3 используется алгоритм сжатия с потерями, разработанный для существенного уменьшения размера данных, необходимых для воспроизведения записи и обеспечения качества воспроизведения звука очень близкого к оригинальному (по мнению большинства слушателей), хотя, конечно, меломаны говорят о заметном различии. Однако при создании MP3 со средним битрейтом 128 кбит/с в результате получается файл, размер которого составляет примерно 1/11 от оригинального файла с CD-Audio. Именно этот факт открыл музыке в формате MP3 дорогу в Сеть.

Конечно, для привычного MP3 давно созданы альтернативы – FLAC, APE и другие алгоритмы компрессии аудиоданных с возможностью идентичного восстановления волновой формы после декодирования. Однако тут приходится учитывать, что форматы кодирования звука с потерями (тот же MP3 и его аналоги) используются не только для обмена музыкой в Сети и хранения ее на компьютере, но и для передачи голоса через Интернет. И в этой сфере главный козырь MP3 и других алгоритмов сжатия с потерями – максимально эффективное использование каналов передачи данных.

Дело в том, что разработчики любой программы (или онлайн-сервиса) для IP-телефонии стараются обеспечить внятную передачу речи для как можно большего числа абонентов – ведь те же Скайп-конференции невероятно популярны. Соответственно, качество звука уходит на второй план – вполне достаточно «телефонного» качества, которое, безусловно, бесконечно далеко от требований для музыки.

Зато в случае с VoIP-программами принципиально важна возможность декодирования звукового потока в реальном времени – иначе обмен информацией между собеседниками окажется затруднительным. То есть любое использование алгоритмов сжатия без потерь приводило бы к заметным задержкам во времени, что сделало бы невозможным всякое интерактивное общение.

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

Во многом именно поэтому, к примеру, в Skype используются кодеки SILK (8-24 кГц), G.729 (8 кГц) и G.711 (ранее использовались также ILBC и ISAC). Благодаря им при достаточной скорости интернет-соединения (30-60 кбит/с) в большинстве случаев качество звука сопоставимо с качеством обычной телефонной связи, а при хороших условиях соединения заметно лучше. Но кодеки Skype, в отличие от MP3, совершенно непригодны для хранения и передачи музыки.

Одним словом, в какой-то момент оказался востребован универсальный кодек, который бы мог одинаково хорошо «утаптывать» как музыку для хранения на ПК и передачи по Сети, так и человеческую речь для VoIP-сервисов.

Универсальная «Работа»

В латыни слово «Opus» означает «работа» или «дело». В нашем обзоре Opus (ранее известный под рабочим названием Harmony) – это аудиокодек с потерями, разработанный сообществом Internet Engineering Task Force (IETF) специально для применения в приложениях реального времени в Интернете. Является открытым форматом, стандартизованным в RFC 6716, a эталонная реализация распространяется под лицензией BSD. Все известные патенты, под которые попадает кодек Opus, доступны под лицензией royalty-free. Формат битового потока был зафиксирован 8 января 2012 года.

Основное преимущество данного кодека – низкая задержка кодирования (от 2,5 мс до 60 мс, настраиваемо), более высокая компрессия аудиоданных, поддержка многоканального звука (до 255 каналов). Первой поддержку Opus обеспечила компания Mozilla в своих программах Firefox и Thunderbird – с 15-й версии обоих продуктов. Позднее было объявлено, что Skype перейдет на Opus в одной из ближайших версий.

Основные параметры Opus:

- дискретизация от 8 до 48 кГц;

- битрейт от 6 до 510 кбит/с;

- поддержка режимов постоянного и переменного битрейта;

- задержка кодирования от 2,5 до 60 мс, настраиваемо.

По мнению большинства специалистов в области цифрового звука, существующий сейчас в альфа-версии 1.1 открытый кодек Opus избавлен он наиболее серьезных недостатков MP3, но при этом его разработчикам удалось сохранить и приумножить все достоинства кодека-«ветерана».

В числе разработчиков нового алгоритма сжатия звука – несколько очень известных специалистов, в числе которых: Жан-Марк Валин (Xiph.Org, Octasic, Mozilla Corporation), Коэн Вос (Skype) и Тимоти Б. Терриберри (Xiph.Org, Mozilla Corporation). Значительную поддержку при разработке и тестировании кодека оказала корпорация Google, что вполне понятно: интернет-гигант заинтересован в Opus, так как развивает ряд собственных проектов в области IP-телефонии – от мессенджера Google Talk и сервиса Google Voice до VoIP-функционала в устройствах линейки Google Nexus и мобильной ОС Android.

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

Как устроен Opus

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

На следующем этапе кодек преобразует сигнал с помощью фильтра предварительной очистки – напомню, все это происходит в режиме реального времени! Используя речевые кадры, модуль предсказания частоты аудиосигнала вносит изменения в последующие кадры, после чего частотное квантование нормирует частоты человеческой речи.

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

Ну и на заключительном, четвертом этапе интервального кодирования SILK работает с дискретными величинами, которые могут принимать ограниченное число значений, – производится покадровый вывод сигнала.

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

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

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

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

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

Резюме: перспективы Opus

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

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

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

Конечно, без проблем также не обойдется – у Opus имеются достаточно сильные конкуренты. Сам же кодек (напомню, речь еще идет об альфа-версии) еще не избавился от всех багов. В конце концов, он только в сентябре 2012-го смог пройти сертификацию в IETF (Internet Engineering Task Force) как стандарт аудиокодека для использования в Интернете.

Впереди же, как принято в IT-индустрии, – многочисленные патентные претензии и судебные иски. Одна из причин – тот факт, что Opus изначально имеет статус royalty-free, то есть за его использование не нужно платить никаких отчислений правообладателям. Понятно, что многим конкурентам невыгодно появление на рынке такого продукта.

И в самом деле: компании Qualcomm и Huawei уже заявили о том, что новая разработка нарушает принадлежащие им патенты. В ответ разработчики Opus публично заявили, что они не нарушили авторских прав и более того – они ожидали появления подобных претензий и готовы отстаивать свою правоту. Впрочем, если юридическую поддержку группе разработчиков Opus обеспечит Google, за будущее кодека можно будет не беспокоиться.

Другой вопрос – какую долю рынка в конце концов займет Opus? Формат МР3 все же слишком популярен, чтобы пользователи легко от него отказались. Вряд ли кто-то возьмется переводить свою домашнюю коллекцию музыки из МР3 в Opus только из-за малоощутимого улучшения качества звука.

Другое дело – разработчики решений для VoIP и производители разнообразных гаджетов. Последние обеспечат аппаратную поддержку Opus, ведь основные показатели у нового кодека столь хорошие, что в скором времени наверняка можно ожидать появления новой технологии в беспроводных наушниках и портативных плеерах.

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

Для тех, кто заинтересовался: официальный сайт Opus, замечу, предельно аскетично выглядящий, расположен в Сети по адресу opus-codec.org.


авторы
Антон Платов
номер
2013/04

Еще из раздела технологии
Musio - робот, который хочет дружить Ninebot One: одноколесный электрический скутер OWOW - сочинять музыку стало проще Panasonic показала робокостюмы
© 2016 PressEnter