Обзор наиболее распространенных аудиокодеков

Максим Бабенков

Сжатие без потерь качества

   FLAC

   Monkey’s Audio

   WavPack

   TTA

Сжатие с потерями качества

   MPEG-1 Layer 3, или MP3

   MPEG-2/4 AAC

   Ogg Vorbis (OGG)

   Windows Media Audio (WMA)

   MusePack (MPC)

 

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

Кодирование, или сжатие, может быть двух видов: с потерями информации и без потерь. Для каждого вида кодирования существуют свои виды аудиокодеков. Чем же кодирование информации без потерь отличается от кодирования информации с потерями?

При кодировании информации без потерь сжатие данных не приводит к потере информации, а следовательно, декодируемый аудиофайл абсолютно идентичен оригиналу. При кодировании данным способом сокращение первоначального объема информации достигает 20-50%. Все чаще к такому способу прибегают не только аудиоманы, но и простые пользователи. По мере роста дискового пространства и снижения цен на накопители все больше пользователей предпочитает хранить аудиоданные, закодировав их именно этим способом. Сегодня алгоритмов, позволяющих выполнить данную операцию, существует довольно много, но самыми популярными являются те, что реализованы в кодеках FLAC, Monkey’s Audio, WavPack, и TTA.

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

Методов сжатия с потерями существует достаточно много, наиболее известные из них — MPEG-1 Layer 3, MPEG-2/4 AAC, Ogg Vorbis, Windows Media Audio, MusePaсk и др.

Сжатие без потерь качества

FLAC

Одним из наиболее популярных форматов для сжатия звука без потерь качества является кодек FLAC. Основными достоинствами этого аудиокодека являются его постоянное обновление и, конечно же, многоплатформенность: FLAC компилируется на множестве платформ — Unixes (Linux, BSD, Solaris, OS X), Windows, BeOS и OS/2. Такая всеобъемлющая поддержка операционных систем способствует широкому использованию данного аудиокодера.

Еще одно достоинство аудиокодека FLAC — наличие (помимо базовых кодера и декодера в виде библиотек, которые входят в комплект инсталлятора) графической оболочки, позволяющей упростить процесс кодирования, а также внешних модулей (плагинов) для разных проигрывателей (включая Winamp разных версий, Foobar2000 и т.д.). В комплект также входят утилита командной строки, выполняющая сжатие и распаковку файлов, и утилита для редактирования метаданных в файлах.

Интересная отличительная особенность FLAC состоит в том, что он позволяет делать архивную копию аудиодиска, записываемую в один файл. В дальнейшем такая копия может быть легко записана на диск в случае утери оригинального диска или его повреждения. FLAC использует восемь степеней сжатия. Как и в любом кодере, от степени сжатия зависит скорость кодирования и размер получаемого файла. К потоку FLAC могут быть добавлены тэги ID3v1 и ID3v2. Эти данные не относятся к формату, однако декодер умеет их пропускать.

Monkey’s Audio

Пожалуй, самым популярным в настоящее время кодеком, сжимающим информацию без потерь, является Monkey’s Audio. Обусловлено это прежде всего бесплатностью данного кодека и достаточно качественным сжатием аудиопотока, которое он обеспечивает. Единственным фактором, ограничивающим сферу его применения, является отсутствие поддержки мультиплатформенности — кодек Monkey’s Audio присутствует только на платформе Windows. Тем не менее поддержка данного формата реализована в ряде проигрывателей, а, например, плагин для проигрывателя Winamp поставляется вместе с Monkey’s Audio. Кроме того, существует возможность установки DirectShow-фильтров для других совместимых плееров. Плагин для воспроизведения поддерживает все распространенные функции и ID3-тэги.

Кодек Monkey’s Audio, безусловно, оценят те, кому необходим максимально качественный звук. Кодек обеспечивает сжатие около 40-50%. При кодировании данных доступны несколько различных степеней сжатия — от параметра, обеспечивающего быстрое кодирование, до параметра, осуществляющего более качественное сжатие с затратой большего процессорного времени. Еще раз отметим, что пользователю при применении компрессии с наивысшей степенью сжатия стоит учитывать, что при проигрывании такого файла программным плеером потребуется больше процессорного времени для его декодирования.

По заверениям разработчика, Monkey’s Audio позволяет кодировать WAV-файлы с любой частотой дискретизации, с 8-, 16- или 24-битным динамическим диапазоном, в моно- или стереорежимах.

После установки дистрибутива Monkey’s Audio пользователь получает возможность кодировать аудиофайлы не только во внутренний формат Monkey’s Audio (*.ape), но и в некоторые другие форматы, которые осуществляют сжатие данных с потерями. Все эти кодеки поддерживаются через графическую оболочку программы. Отметим, правда, что в поставку входят только кодеки, осуществляющие компрессию без потери качества, а все остальные пользователю придется установить в систему самостоятельно.

Как уже подчеркивалось, при всех своих достоинствах Monkey’s Audio остается абсолютно бесплатным, а кроме того, открыт его исходный код, что позволяет разработчикам включать поддержку кодека в свои программы.

WavPack

WavPack — открытый кодек под платформу Windows. При разработке данного формата предполагалось, что он будет использоваться для сжатия информации без потерь, и только впоследствии в него были добавлены функции кодирования с потерями. Кодек является бесплатным, что повышает его привлекательность. Обладает он также и плагинами под более распространенные плееры, установка которых осуществляется пользователем вручную.

Основной особенностью WavPack является возможность создания сразу двух файлов, один из которых является файлом, полученным с потерей качества, а другой — корректирующим: с его помощью можно восстановить основной файл до оригинального состояния.

TTA

TTA (True Audio) — бесплатный мультиплатформенный аудиокодек для компрессии без потерь 8- ,16- или 24-битных аудиофайлов формата WAV. Создан он российскими разработчиками. Кодек TTA обеспечивает компрессию до 30% и способен работать в режиме реального времени. Из достоинств данного кодека стоит отметить тот факт, что пакет TTA содержит DirectShow-кодеки (компрессор, декомпрессор, сплиттер), позволяющие другим приложениям легко работать с потоками True Audio. С корректно установленными кодеками пользователь может проигрывать файлы формата TTA в таких плеерах, как RealOne, RadLight, Windows Media, и в других DirectShow-совместимых проигрывателях.

В начало В начало

Сжатие с потерями качества

MPEG-1 Layer 3, или MP3

История формата MPEG началась еще 1988 году, когда был основан комитет Moving Pictures Expert Group. В этом же году была начата разработка формата MPEG-1, который является форматом видеосжатия. Завершение работы над форматом и его стандартизация произошли несколько позже. К моменту окончательной стандартизации формата MPEG-1 было создано три звуковых кодера этого семейства — MPEG-1 Layer I, Layer II и Layer 3. Последний из них является в настоящее время самым популярным цифровым форматом аудиосжатия. Формат MPEG-1 Layer 3 (его более привычное название — MP3) был разработан немецким институтом Fraunhofer IIS совместно с университетом Erlangen. Работа над ним была начата в 1987 году, но только в 1992-м формат приобрел официальный статус и стал неотъемлемой частью MPEG-1.

Продвижение формата MP3 происходило довольно медленно, что объясняется двумя причинами: платность формата и отсутствие проигрывателей музыки данного формата (кроме плеера от Fraunhofer IIS).

Формат MP3 разрабатывался специально для передачи звука по сети, при этом закодированный файл должен был обладать небольшим объемом при качественном звуке. Именно эти параметры (небольшой размер файла при битрейте 128 Кбит/с и достаточно качественное звучание по сравнению с оригиналом) стали в конечном счете главными факторами успеха формата.

Многие пользователи уже поняли, что данный формат не отвечает больше потребностям времени. На смену МР3 идут новые, улучшенные форматы, однако у него еще много приверженцев, и его отмирание, по нашему мнению, произойдет не скоро. Этому тоже есть простое объяснение: если раньше MP3-файлы можно было слушать только на компьютере, то теперь появляется все больше различных аппаратных средств для их прослушивания — формат поддерживается бытовыми DVD-приводами, автомагнитолами, современными мобильными телефонами, карманными компьютерами и т.д.

MPEG-2/4 AAC

В 1994 году был утвержден новый стандарт MPEG-2, который получил продолжение в виде одного из достаточно известных аудиокодеков MPEG-2 AAC (MPEG-2 Advanced Audio Coding). Чуть позже, после того как компания Apple лицензировала MPEG-4, формат стал называться MPEG-4 AAC. Первоначальным разработчиком формата MPEG-2 AAC является все тот же институт Fraunhofer IIS, который совместно с компаниями AT&T, Sony, NEC и Dolby представил данный формат в начале 1998 года.

Сегодня это один из главных конкурентов формата MP3. Как и в MP3, в основе алгоритма AAC лежит психоакустическая модель кодирования. Однако MPEG-4 AAC обладает рядом достоинств по сравнению с MP3. Прежде всего это поддержка многоканального звука и большое количество усовершенствований, направленных на улучшение качества выходного аудиосигнала.

Формат, несомненно, стал бы популярным, если бы не одно обстоятельство, которое несколько приостановило его развитие. После окончания работ над MPEG-2 AAC некоторые из компаний-соучредителей забрали исходные коды стандарта и на их базе создали собственные форматы. Получившиеся форматы не совместимы друг с другом, а кроме того, являются коммерческими. На данный момент существует несколько AAC-кодеков, среди которых наиболее известным является AAC LC, применяемый в технологии Apple QuickTime. Также распространен Nero AAC, используемый в пакете Nero Burning Rom.

Достоинством кодека MPEG-2 AAC является то, что он поддерживается аппаратными плеерами, один из ярких представителей которых популярный плеер Apple iPod. Кроме того, файлы данного формата доступны для покупки через Интернет-магазин компании Apple. Столь широкая поддержка этого формата именитой компанией, а также его применение в промышленных масштабах вселяют в пользователей доверие к данному аудиокодеку.

Ogg Vorbis (OGG)

Аудиокодек Ogg Vorbis увидел свет в 2000 году. Он является открытым и свободным для распространения. Алгоритм Ogg Vorbis рассчитан на сжатие данных на всех возможных битрейтах без ограничений, то есть от 8 до 512 Кбит/с, но при этом только в режиме переменного битрейта (VBR). Алгоритм предполагает хранение внутри файлов подробных комментариев об исполнителе и названии композиции. В алгоритме предусмотрена возможность кодирования нескольких аудиоканалов, а также редактирование содержимого файлов. Кодек поддерживает потоковое воспроизведение. Для хранения данных используется собственный универсальный формат, рассчитанный на хранение любой мультимедийной информации системы Ogg Squish.

Аудиокодек лучше работает на низких битрейтах — до 128 Кбит/с, чем на высоких. В связи с этим существует альтернативный кодек, улучшающий работу кодека Ogg Vorbis на более высоких битрейтах.

В пользу формата Ogg Vorbis можно привести аргумент, который уже упоминался при описании формата MP3, — широкая аппаратная поддержка формата. Недостатком его является невозможность обработки многоканального звука.

Windows Media Audio (WMA)

Разработку аудиокодека, известного сейчас как Windows Media Audio (WMA), начала фирма Voxware, и тогда он назывался Voxware Audio Codec. Впоследствии компания отказалась от разработки данного продукта, а компания Microsoft купила его и доработала. Вследствие этого у кодека изменилось название — на Windows Media Audio — и он стал бесплатным.

В последнее время кодек WMA набирает популярность, поскольку компания Microsoft встроила его в свои операционные системы Windows 2000 и Windows XP.

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

На данный момент WMA9 является последней версией кодека и логическим продолжением WMA8. Кодек WMA9 практически не отличим от старой версии, за исключением того, что в нем появилась поддержка переменного битрейта (VBR) и применяется технология Fast Streaming, призванная сократить время буферизации передаваемого конечному пользователю WMA-контента. Разработчики также заявляют о заметном повышении качества кодирования по сравнению с WMA8.

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

Среди основных преимуществ формата нужно упомянуть его достаточно широкую распространенность, возможность воспроизведения на любой Windows-системе и аппаратную поддержку большинством современных плееров. Но и недостатков, останавливающих пользователей от применения данного формата, довольно много. Назовем лишь некоторые из них: формат является закрытым и разрабатывался в коммерческих целях; кодек обладает системой защиты от произвольного копирования (DRM) и различными несовместимыми версиями; имеет низкую скорость кодирования и автоматически добавляет незначительный участок тишины в конце аудиотрека во избежание щелчков.

MusePack (MPC)

Кодек MusePack (первоначальное название — Mpeg Plus) базируется на MPEG-1 Layer II, отсюда его направленность на кодирование преимущественно на более высоких битрейтах, нежели MP3. Данным аудиокодеком предусмотрено кодирование только в режиме переменного битрейта (VBR). Скорость компрессии и декомпрессии в формат заметно выше скорости выполнения этих операций применительно к MP3-файлам. В среднем качество кодирования MPC на высоких битрейтах заметно выше качества, обеспечиваемого MP3, что прежде всего связано с различиями в механизмах кодирования. Недостатком кодека является отсутствие поддержки многоканального звука и аппаратной поддержки.

В MusePack можно настроить качество кодирования, реализованное в виде нескольких встроенных настроек (presets), каждая из которых рассчитана на определенный диапазон. Другой интересной особенностью MusePack является то, что он позволяет использовать в качестве исходного материала не только WAV-файлы, но и файлы, закодированные большинством популярных кодеков, которые выполняют сжатие без потери качества.

КомпьютерПресс 8'2005