Nero aac что это

Обновлено: 04.07.2024

Внимание: это старая версия статьи, новая доступна на моём сайте.

На дворе 2011-й год, с момента появления первого MP3 кодировщика прошло уже 17 лет. Но то, что большинство из нас до сих пор спокойно слушает музыку в формате MP3 — вовсе не значит, что прогресс всё это время топтался на месте. И это касается не только развития алгоритма кодирования MP3, но и эволюции кодирования аудио с потерями вообще — в виде новых, более совершенных кодеков, действительно позволяющих получить лучшее качество при меньшем размере. Такие форматы как OGG Vorbis, AAC, WMA, Musepack давно оставили позади устаревший MP3 с его многочисленными ограничениями и недостатками.

Параллельно, всё большие обороты набирает кодирование без потерь (lossless). Но из-за больших объемов данных на сегодняшний день оно всё еще непригодно для полномасштабного использования — особенно для портативных устройств с ограниченным объемом памяти, для потокового вещания в сети, и просто для быстрого обмена музыкой в интернете (надо признать, что не у всех и не всегда под рукой есть 100-мегабитный доступ в интернет).

И так, MP3 устарел, и ему определенно созрела замена. Только как быть пользователю непосвященному, но желающему добиться максимально качественного звучания с минимальными затратами объемов памяти? Ведь альтернативных кодеков довольно много (как минимум 3 из них действительно достойны внимания): Apple продвигает с помощью своего iTunes Store формат AAC (Advanced Audio Coding — позиционируется как преемник MP3), Microsoft — свой собственный лицензируемый WMA (Windows Media Audio), кроме того, всё большую известность приобретает OGG Vorbis, а особо просветленные используют даже такой формат как Musepack. Который из этих кодеков выбрать?

Однозначного ответа на этот вопрос нет — и именно поэтому я пишу сию статью.

Выбор того или иного кодека зависит от конкретной задачи. А именно:

1. От оборудования и ПО, с помощью которого будет воспроизводиться звук. Т.е. от наличия поддержки того или иного формата аудио, а также качества воспроизведения (им желательно руководствоваться при выборе битрейта).

2. От объема памяти, который будет выделен под конечный материал. Соответственно подбирается больший или меньший целевой битрейт/качество.

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

Таким образом, алгоритм примерно следующий:

1) Выяснить, какие форматы поддерживает целевое устройство.
2) Определиться, сколько места вы сможете выделить под аудио материал, а также определить суммарную продолжительность аудио предназначенного для кодирования.
3) Вычислить нужный битрейт по формуле: битрейт = дисковое_пространство(в килобитах) / суммарная_продолжительность(в секундах).
4) В соответствии с битрейтом выбрать из поддерживаемых форматов оптимальный (об этом далее).
5) Подобрать наилучший кодер и параметры к нему.

image

  • поддержка более широкого набора форматов (вплоть до 48 каналов) и частот дискретизации звука (от 8 кГц до 96 кГц);
  • более эффективный и простой банк фильтров: гибридный банк фильтров МР3 был заменен обычным MDCT (модифицированным дискретным косинусным преобразованием);
  • более широкие пределы варьирования частотно-временного разрешения в банке фильтров — в восемь раз (в МР3 — в три раза) — привели к улучшению кодирования транзиентов (переходных процессов) и стационарных участков аудиосигнала;
  • более качественное кодирование частот выше 16 кГц;
  • более гибкий режим кодирования стереосигналов, позволяющий переключаться в режим M/S («joint stereo») независимо в различных частотных полосах;
  • дополнительные возможности стандарта, повышающие эффективность компрессии: технология формирования шума во временной области (TNS), предсказание MDCT-коэффициентов по времени (long term prediction), режим параметрического кодирования стереосигнала (parametric stereo), синтез шумов (perceptual noise substitution), технология восстановления высоких частот (SBR).
OGG Vorbis

image

Ogg Vorbis — это относительно новый универсальный формат аудио компрессии, официально вышедший летом 2002 года. Он принадлежит к тому же типу форматов, что и МР3, AAC, VQF и WMA, то есть к форматам компрессии с потерями. Психоакустическая модель, используемая в Ogg Vorbis, по принципам действия близка к МР3 и иже с ними, но и только — математическая обработка и практическая реализация этой модели в корне отличаются, что позволяет авторам объявить свой формат совершенно независимым от всех предшественников.
Главное неоспоримое преимущество формата Ogg Vorbis — это его полная открытость и свободность. Более того, в нем использована новейшая и наиболее качественная психоакустическая модель, из-за чего соотношение битрейт/качество значительно ниже, чем у других форматов. Как результат — качество звука лучше, но размер файла меньше.
В формате имеется большое количество достоинств. Например, формат Ogg Vorbis не ограничивает пользователя только двумя аудио каналами (стерео — левый и правый). Он поддерживает до 225 отдельных каналов с частотой дискретизации до 192kHz и разрядностью до 32bit (чего не позволяет ни один формат сжатия с потерями), поэтому Ogg Vorbis великолепно подходит для кодирования 6-ти канального звука DVD-Audio. К тому же, формат OGG Vorbis — sample accurate. Это гарантирует, что звуковые данные перед кодированием и после декодирования не будут иметь смещений или дополнительных/потерянных сэмплов относительно друг друга. Это легко оценить, когда вы кодируете non-stop музыку (когда один трек постепенно входит в другой) — в итоге сохранится целостность звука.
Возможностью потокового вещания сейчас никого не удивишь, но у этого формата она заложена с самых основ. Это дает формату достаточно полезный побочный эффект — в одном файле можно хранить несколько композиций с собственными тегами. При загрузке такого файла в плеер должны отобразиться все композиции, будто их загрузили из нескольких различных файлов.
Отдельно стоит упомянуть достаточно гибкую систему тегов. Заголовок тегов легко расширяется и позволяет включать тексты любой длины и сложности (например, текст песни), перемежающиеся изображениями (например, фотография обложки альбома). Текстовые теги хранятся в UTF-8, что позволяет писать хоть на всех языках одновременно и исключает возможные проблемы с кодировками. Это значительно удобнее различных ухищрений типа id3 тегов.
Ogg Vorbis по умолчанию использует переменный битрейт, при этом значения последнего не ограничены какими-то жесткими значениями, и он может варьироваться даже на 1kbps. При этом стоит заметить, что форматом жестко не ограничен максимальный битрейт, и при максимальных настройках кодирования он может варьироваться от 400kbps до 700kbps. Такой же гибкостью обладает частота дискретизации — пользователям предоставляется любой выбор в пределах от 2000Hz до 192000Hz.
Ogg Vorbis был разработан сообществом Xiphophorus для того, чтобы заменить все платные запатентованные аудио форматы. Несмотря на то, что это самый молодой формат из всех конкурентов МР3, Ogg Vorbis имеет полную поддержку на всех известных платформах (Windows, PocketPC, Symbian, DOS, Linux, MacOS, FreeBSD, BeOS и др.), а также большое количество аппаратных реализаций. Популярность на сегодняшний день значительно превосходит все альтернативные решения.
Стоит заметить, что Ogg Vorbis является всего лишь небольшой частью мультимедиа проекта Ogg Squish, в который также входят свободные кодировщики: Speex — для сжатия голоса; FLAC — для сжатия звука без потерь; Theora — для сжатия видео.

Musepack
  • Формат не производит второе dct-преобразование, он фактически не страдает артефактами pre-echo, в отличие от таких форматов как MP3, Vorbis, AAC и WMA.
  • Более эффективные алгоритмы переменного битрейта. Если проследить, как изменяется битрейт во время проигрывания треков MPC, можно заметить, что для более простых участков кодер выделяет меньший битрейт, а для сложных — значительно больший, иногда выше 400 (!) кбит/с. Так же тут стоит упомянуть один интересный факт: кодер МР3 в режиме VBR для тишины выделяет битрейт 32 кбит/с (при частоте дискретизации 44100 Гц), AAC и OGG Vorbis — 2кбит/с, Musepack же кодирует тишину с минимальными затратами, <1 кбит/с (например, минута тишины займет каких-то 514 байт). Всё это говорит о чрезвычайной «экономности» этого кодера.
  • Мощная и гибкая психоакустическая модель. Тут можно упомянуть, например, динамический НЧ фильтр на базе фреймов (в других кодерах устанавливается фиксированная полоса пропускания для каждой предустановки качества).
  • Более продвинутое сжатие, основанное на оптимизированных таблицах Хаффмана (тот же LAME MP3 впустую тратит около 20% битрейта — только лишь из-за несовершенного математического сжатия)

image

Windows Media Audio — лицензируемый формат файла, разработанный компанией Microsoft для хранения и трансляции аудиоинформации.

Изначально формат WMA рекламировался как альтернатива MP3, но на сегодняшний день Microsoft противопоставляет ему формат AAC. Номинально формат WMA характеризуется хорошей способностью сжатия, что позволяет ему «обходить» формат MP3 и конкурировать по параметрам с форматами Ogg Vorbis и AAC. Но как было показано независимыми тестами, а также при субъективной оценке, качество форматов всё-таки не является однозначно эквивалентным, а преимущество даже перед MP3 однозначным, как это утверждается компанией Microsoft.

Теперь непосредственно к сути дела.

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

И так, ниже я расскажу о наиболее подходящих для каждого отдельного случая кодерах, а также о правильном выборе параметров. Для конвертирования рекомендую использовать foobar2000 (подробно настройка конвертера описана здесь), собственно параметры указаны как раз для него. Кроме того, для foobar2000 есть большое количество полезных DSP, которые могут нам пригодиться для предварительной обработки аудио.

Для тех же, кто собирается конвертировать через консоль или другую программу: переменную %s надо заменить на имя файла-источника (или аналогичную переменную), а %d — на имя выходного файла.

Обратите внимание, что для каждого диапазона битрейта указаны возможные варианты форматов: первый — самый приоритетный. Если же ваш плеер не поддерживает первый вариант — обратите внимание на следующий, и т.д. Как я уже писал, внимания на самом деле сегодня достойны только три кодека — это AAC, OGG Vorbis и Musepack. WMA же, по причине своей закрытости, особым качеством не отличается, но всё же в большинстве случаев лучше, чем MP3. Учитывая, что некоторые устройства из альтернатив поддерживают только WMA, я буду давать рекомендации для каждого из четырех форматов.

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

Упоминаемые в этой статье, а также некоторые другие кодеры, с русскими описаниями основных параметров и рекомендациями можно найти здесь.

Сверхнизкие битрейты (

Этот диапазон прекрасно подходит для кодирования аудиокниг. И тут вариант может быть только один — AAC, а точнее, Nero AAC. Параметры следующие:

-lc -q 0.35 -ignorelength -if - -of %d

При этом материал должен быть предварительно преобразован в моно и ресемплирован до частоты 22050 Гц (желательно ресемплером SoX). На выходе получим обычное Low Complexity AAC с битрейтом около 25 кбит/с.

Для музыки в этом диапазоне тоже есть варианты:

1) Nero AAC. Тут никаких преобразований не нужно:

-q 0.15 -ignorelength -if - -of %d

На выходе — High Efficiency AAC v2 (с параметрическим стерео и синтезом ВЧ),

35 кбит/с. Прекрасный вариант для какого-нибудь интернет-радио. Только тут надо не забывать, что декодер в плеере должен поддерживать HE-AACv2, иначе получите полное отсутствие ВЧ и монофонию.

2) OGG Vorbis AoTuV — данная модификация libvorbis включает усовершенствование алгоритма кодирования с низкими битрейтами и, даже без технологии SBR, не сильно уступает HE-AACv2. Командная строка:

Полученные таким образом файлы должны быть полностью совместимы со стандартными декодерами OGG Vorbis. Битрейт — аналогичный — около 35 кбит/с.

3) WMA 10 Pro. Для таких случаев у Microsoft тоже есть что-то наподобие SBR (синтез ВЧ), звучит не так плохо, как могло бы. Правда битрейт чуть выходит за рамки — 48 кбит/с.

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 48_44_2_16 -input %s -output %d

Учтите, что старые (особенно «железные») декодеры не поддерживают WMA 10. Для такого случая можно использовать WMA 9.2 (кодер тот же), правда, его качество на низких битрейтах значительно хуже.

-silent -a_codec WMA9STD -a_mode 3 -a_setting 48_44_2 -input %s -output %d

Низкий битрейт,

1) QuickTime AAC — победитель (если не считать новоиспеченный Opus/CELT) того самого теста. Ниже указаны настройки для кодера QAAC:

-s -v 64 --he -q 2 --ignorelength - -o %d

На выходе имеем HE-AAC (с SBR, но без Parametric Stereo), что должно поддерживаться различными iPod'ами и тому подобным.

2) OGG Vorbis AoTuV — хоть и оказался довольно далеко от QAAC, но всё же:

3) И на всякий случай WMA 10 Pro:

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 64_44_2_16 -input %s -output %d

Для старых декодеров — WMA 9 Standard:

-silent -a_codec WMA9STD -a_mode 3 -a_setting 64_44_2 -input %s -output %d

Чуть выше,

А этот битрейт я рассматриваю уже из-за Vorbis.

1) Как показали тесты, лучше всего с ним справляется кодер OGG Vorbis AoTuV:

2) Nero AAC — очень неплохой результат. В местах, где высокие выражены не так ярко, может звучать даже лучше Vorbis'а (на высоких проигрывает из-за синтеза).
30 -ignorelength -if — -of %d

Используемый профиль — HE-AAC.

Стандарт де-факто, 128 кбит/с

Интересный факт: многие утверждают, что для MP3 128 кбит/с — «пограничный битрейт», с которого начинается неотличимое от оригинала качество. Пожалуй, это так… для пластмассовых китайских колонок с блатняком. Реально же этот порог находится где-то около 200 кбит/с, при чем новые форматы дают на этом битрейте более стабильное качество.

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

-q 0.40 -ignorelength -if - -of %d

Профиль — обычный AAC LC.

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 128_44_2_24 -input %s -output %d

Для старых декодеров — WMA 9 Standard:

-silent -a_codec WMA9STD -a_mode 3 -a_setting 128_44_2 -input %s -output %d

В этом диапазоне разница межу кодерами Nero, QuickTime AAC и Vorbis практически сходит на нет. Но здесь уже на сцену выходит тот самый Musepack. Как раз на этих битрейтах начинает проявляться его преимущество (за счет необычайно гибкого VBR режима, а также принципиально другого алгоритма сжатия):

1) Musepack --silent --quality 5 - %d

2) Nero AAC -q 0.50 -ignorelength -if - -of %d

-silent -a_codec WMA9STD -a_mode 3 -a_setting 160_44_2 -input %s -output %d

Порог прозрачности:

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

Кстати, у LAME MP3 в этом районе тоже находится подобный порог (VBR V2), но у этого кодека очень большие проблемы с пре-эхом (искажения предшествующие резким всплескам сигнала), а на слух часто ощущается Noise Shaping (шумы от ошибок квантования таким образом переносятся в высокочастотную область).

У таких же кодеков, как Vorbis, AAC и MPC на этом пороге начинается четкая прорисовка в композициях даже фоновых шумов.

1) Musepack --silent --quality 6 - %d

2) Nero AAC -q 0.55 -ignorelength -if - -of %d

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 192_44_2_24 -input %s -output %d

WMA 9 Standard, максимальный битрейт воспринимаемый старыми декодерами:

-silent -a_codec WMA9STD -a_mode 3 -a_setting 192_44_2 -input %s -output %d

Разумный максимум:

225 кбит/с повышение битрейта чаще всего уже не дает слышимого прироста качества, а размер файлов, естественно увеличивается. Но всё же, для особенно сложных композиций (и хорошей аппаратуры/ушей) существуют более высокие настройки качества. На этих битрейтах для таких кодеров как Museppack и Vorbis мне даже не удалось найти киллер-семплов (проблемные семплы, на которых явно проявляются недостатки алгоритма кодирования). И так:

2) Musepack --silent --quality 10 - %d

3) QAAC -s -V 127 -q 2 --ignorelength - -o %d

4) WMA 10 Pro -silent -a_codec WMA9PRO -a_mode 3 -a_setting 384_44_2_24 -input %s -output %d

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

Вот, собственно, и всё, чем я хотел с вами поделиться. Пробуйте, комментируйте, задавайте вопросы.

Технические характеристики наиболее распространённого режима AAC LC:

ПараметрЗначение
Каналымоно, стерео, многоканальность
Частота дискретизацииот 8 кГц до 96 кГц
Битрейтдо 256 kbps на канал

Сам по себе формат является проприетарным и требует приобретения лицензии для использования в коммерческих целях.

История

Разработка формата начата в 1994 году совместными усилиями Fraunhofer IIS, AT&T, Dolby и Sony. Только три года спустя формат стал частью MPEG стандарта как MPEG-2 AAC. При последующей разработке аудио стандарта MPEG-4, AAC был улучшен и усовершенствован.

В общих чертах хронология развития формата выглядит следующим образом:

  • 1997 — стандартизация MPEG-2 AAC-LC.
  • 1999 — стандартизация MPEG-4 AAC-LC. Добавлена технология PNS (Perceptual Noise Substitution).
  • 2003 — стандартизация MPEG-4 HE-AAC. Добавлена технология SBR (Spectral Band Replication).
  • 2004 — стандартизация MPEG-4 HE-AAC v2. Добавлена технология PS (Parametric Stereo).

HE-AAC является форматом, ориентированным на низкие битрейты. Комбинация из AAC LC и SBR, используемая в нем, дает неплохое качество на битрейтах от 32 до 48 kbit/s. Естественно, HE-AAC поддерживает многоканальность и допускает богатый выбор частот дискретизации. HE-AAC также известен как aacPlus.

Будучи скомбинированным с параметрическим стерео HE-AAC v2 обеспечивает хорошее качество аудио на битрейтах около 16 kbit/s для стерео. HE-AAC v2 также известен как aacPlus v2.

Профили

Некоторые профили обладают низкой сложностью, поэтому они более предпочтительны для портативных устройств, но они также дают немного более слабое качество. Тем не менее, наиболее распространенный профиль в настоящее время — LC, так как другие более требовательные профили (Main, LTP) не дают настолько большего качества насколько являются более требовательными к вычислительным ресурсам.

Заголовки

В AAC существует 4 вида заголовков:

Этот формат заголовка предназначен для простого локального хранения, в отличии от ADTS и LATM / LOAS, которые предназначены для мобильной передачи AAC.

В отличии от заголовка ADIF для файлов AAC, заголовок ADTS присутствует в AAC перед каждым необработанным участком данных или блоком от 2 до 4 таких участков данных во фрейме, что позволяет получить хорошую стабильность в таких средах, как мобильная связь или Интернет. Из-за этих дополнительных данных битрейт возрастает примерно на 2-3 kbps. Некоторые японские вещатели цифрового контента выбрали именно этот формат.

LATM / LOAS

В случае с этими заголовками базовый поток данных MPEG-4 HE AAC или HE AAC v2 в первую очередь инкапсулируется в формат мультиплексирования LATM, который описан в ISO/IEC 14496-3. Используется AudioMuxElement() элемент мультиплексирования. Затем этот поток данных, инкапсулированный в LATM должен быть инкапсулирован в формат трансляции LOAS, который описан в том же стандарте ISO/IEC 14496-3. Здесь используется AudioSyncStream(), который добавляет в аудио поток данные для синхронизации.

Такой формат встречается в европейском цифровом вещании.

Реализации

Apple AAC

Этот кодек был разработан компанией Apple и входил в состав фреймворка Core Audio. Этот фреймворк используется в iTunes, браузере Safari и других продуктах Apple. На средних битрейтах в режиме LC этот кодек считается одним из лучших по качеству. Кодировщик изначально входил в состав медиа фреймворка QuickTime, но позднее был перенесён в AV Foundation.

Дата: 20 ноября 2018
Файл: qaac_2.68.zip
Размер: 2.93 MB

Существует реализация обёртки с открытым исходным кодом для AAC из Core Audio и ALAC под названием qaac от разработчика nu774, она работает только под Windows. На момент обновления статьи, это наиболее актуальный AAC кодек.

Nero Digital Audio

Дата: 18 февраля 2010
Файл: NeroAACCodec-1.5.4.zip
Размер: 1.96 MB

Начиная с пятой версии пакет Nero поставляется вместе с AAC кодеком. Сейчас он в составе Nero Digital — проекте о создании нового стандарта в мире цифрового видео и аудио. Nero AAC умеет создавать два типа AAC: LC и HE. Low Complexity (LC) является обычным AAC стандартом, в то время как High Efficiency (HE) использует SBR технологию (схожа с mp3PRO), и если плеер понимает эту технологию, то может быть декодирована дополнительная частотная информация, иначе половина аудио качества пропадает во время воспроизведения. На данный момент кодек значительно устарел и его качество уступает реализации от Apple. Этот кодек очень удобно использовать вместе с программой dBpowerAMP Music Converter и соответствующим кодеком для нее (dBpowerAMP Nero MP4 Codec).

Достоинства Nero MPEG-4 AAC (LC profile):

  • Во всех случаях качество заметно выше, чем у LAME MP3 при меньших размерах файла.
  • Низкая ресурсоемкость по сравнению с последними версиями LAME MP3 (VBR/ABR).

Psytel AACenc and Fastenc

PsyTEL® FAST MPEG-2 AAC LC Encoder v2.0 (build Mar 4 2002) / Copyright © 1999-2001 PsyTEL Research / Copyright © 1999-2001 Иван Димкович

Югославская компания Psytel Research работала над улучшением стандарта MPEG-2/4 AAC. Она была основана приблизительно в 1998 году программистом Иваном Димковичем.

В то время как первая версия (1.0) была приблизительно компиляцией исходных кодов ISO, качество начало увеличиваться быстро и, через некоторое время, это был единственный реально оптимизированный ISO AAC кодировщик, доступный общественности (версии от FhG и Dolby были доступны только для разработчиков, заинтересованных в улучшении их технологий). Liquifier был также доступен, но потоки данных, созданные им были зашифрованы.

К середине 2002 года компания Psytel Research и все ее имущество было куплено Ahead Software GmbH., и AACEnc стал Nero AAC Encoder.

FAAC (Freeware Advanced Audio Сoder)

В конце 1999 Менно Бэккер (Menno Bakker) открыл исходные коды своих разработок и обосновал проект FAAC (Freeware Advanced Audio Coder). Декодер FAAD2 на сегодняшний день считается одним из лучших и быстрейших AAC декодеров. У проекта FAAD2 (Freeware Advanced Audio Decoder) есть Copyright © 2003-2004 M. Bakker, Nero Software AG. За лицензированием необходимо обращаться к Nero Software AG.

HomeBoy AAC

HomeBoy, так называлась группа программистов, которая создала первый ISO публично доступный AAC кодировщик для Windows’а в далеком 1998. Как сообщается, они также были создателями первого стороннего плагина для Winamp’а (их AAC input plugin), таким образом сделав доступным широким массам первый ISO AAC декодер. Кодировщик представляет собой всего лишь компиляцию оригинальных, связанных с ISO, исходных кодов, поэтому качество было плохим. Но интересно то, что потоки данных, созданные им до сих пор декодируются в современных декодерах.

Версии

ДатаВерсияИнтерфейсПлатформа
1998?0.5alpha (Кодировщик)CLIWin32
19981.0 (Декодер)CLIWin32
1998?1.1 (Плеер)CLIWin32
1998?1.09Winamp PluginWin32

Dicas/zPlane Compaact!

AAC кодек Compaact! был разработан немецким инженером DSP, Александром Лерхом (Alexander Lerch). Релиз состоялся в 2003 году. Кодек хорошо приняли после релиза. Также он содержал некоторые интересные возможности. Там было три уровня качества (от быстрого до высококачественного кодирования), поддерживал LC и Main профили, имелась возможность включать или отключать такие технологии как TNS или PNS, поддержка многоканального кодирования, некоторые операции предварительной обработки и очень интересную возможность предварительного прослушивания, которая позволяла услышать в реальном времени как будут звучать композиции после сжатия. По неизвестным причинам, проект был остановлен в 2005 году.

Версии

MBsoft AAC

Проект начался приблизительно в 1998, когда немецкий программист Менно Бэккера (Menno Bakker) начал свою работу над исходными кодами AAC. Кодировщик mbaacenc был в той или иной степени сборкой исходных кодов ISO с хорошим front-end’ом. Также был доступен плагин для Winamp’а.

В конце 1999 Менно (Menno) открыл исходные коды своих разработок и обосновал проект FAAC (Freeware Advanced Audio Coder). Проект до сих пор жив, и его декодер, FAAD2 на сегодняшний день считается одним из лучших и быстрейших AAC декодеров.

После 15 месяцев разработки компания Nero выпускает новый релиз своего AAC кодека в виде бинарников для Linux. В neroAacEnc улучшено качество кодирования аудиоданных с частотой > 48 кГц, улучшена совместимой с оборудованием и iTunes, сохранение параметров кодирования в метаданные. В neroAacDec улучшена обработка ошибочных (битых) данных и улучшена скорость. neroAacTag поддерживает тэги 3GPP и Sony Memory Stick, работает с файлами содержащими несколько тегов одновременно. Кодек считается самой удачной реализацией алгоритма сжатия AAC, на текущий момент не существует альтернативы со свободной лицензией.


на текущий момент не существует альтернативы со свободной лицензией.

с полностью открытой и не будет - патенты же.


и кстати что там с лицензией на nero?

> freeware? shareware?


Хм. Покурим, покурим

А что, у сони реализация хуже?


Я что то не пойму, это he-aac (он же aac+) ? Если нет, то не нужно.


кодек aac, реализация от nero


Для чего оно вообще хоть?


КО: для кодирования музыки


Спасибо, конечно, но я в том плане, чем плох flac/ogg?

> Я что то не пойму, это he-aac (он же aac+) ?

Судя по докам он поддерживает LC-AAC, HE-AAC и HE-AAC v2.


> Спасибо, конечно, но я в том плане, чем плох flac/ogg?

ogg по качеству и степени сжатия сильно уступает

flac - сжатие без потерь. А этот с потерями.

Я его использую для плеера в телефоне. Где-то на 160Кб я уже не слышу разницы (может просто стадо медведей в детстве сделало свое дело). На мой w960i вполне влезит несколько тысяч песен

очередной банально окупированный формат не нужен


PS: использую только FLAC


aac по задумке был приемником mp3, отличается тем что поддерживает многоканальность (MP3 только 2 канала), настоящий (эффективный) vbr, частоту дискретизации от 8 Гц до 96 кГц (MP3 умеет до 48 кГц)

при битрейтах 160 и ниже по качеству звука можно услышать разницу в пользу aac, но то что для большинства файлов кодировались с дисков (2 канала, 44.1 кГц) и небольшая разница на 192 kbps - не дало шансов кодеку на серьёзное развитие

на текущий момент поддержка aac железом хуже чем mp3 (на это кстати изначально повлияло и то что кодек более сложный и ресурсоемкий), но в ipod, pda, многих телефонах он откроется без проблем. кодек используется в интернет и dab радио (как европейский стандарт)

но если по чесноку - в принципе эти кодеки в первую очередь для энтузиастов, если вы не пользуетесь ими - вы не многое теряете.


А не на магнитных ли дисках они начали его использовать? еще в далеком.

не помню как технология называлась

> Я что то не пойму, это he-aac (он же aac+) ? Если нет, то не нужно.

Он самый. Просто конфетка. 64kbps достаточно.

Подскажите для него фронтенд, пожалуйста для linux-based. Сейчас запускаю LameXP под Wine.


>чем плох flac/ogg?

у флака плохое соотношение размер/качество. Какой-нибудь вшивый сд 16 бит 44 кгц занимает больше места чем многодорожечная 24битная запись Огг ворбис хуже по качеству звучания да и свободен лишь потому что никому не был нужен

Внимание: это старая версия статьи, новая доступна на моём сайте.

На дворе 2011-й год, с момента появления первого MP3 кодировщика прошло уже 17 лет. Но то, что большинство из нас до сих пор спокойно слушает музыку в формате MP3 — вовсе не значит, что прогресс всё это время топтался на месте. И это касается не только развития алгоритма кодирования MP3, но и эволюции кодирования аудио с потерями вообще — в виде новых, более совершенных кодеков, действительно позволяющих получить лучшее качество при меньшем размере. Такие форматы как OGG Vorbis, AAC, WMA, Musepack давно оставили позади устаревший MP3 с его многочисленными ограничениями и недостатками.

Параллельно, всё большие обороты набирает кодирование без потерь (lossless). Но из-за больших объемов данных на сегодняшний день оно всё еще непригодно для полномасштабного использования — особенно для портативных устройств с ограниченным объемом памяти, для потокового вещания в сети, и просто для быстрого обмена музыкой в интернете (надо признать, что не у всех и не всегда под рукой есть 100-мегабитный доступ в интернет).

И так, MP3 устарел, и ему определенно созрела замена. Только как быть пользователю непосвященному, но желающему добиться максимально качественного звучания с минимальными затратами объемов памяти? Ведь альтернативных кодеков довольно много (как минимум 3 из них действительно достойны внимания): Apple продвигает с помощью своего iTunes Store формат AAC (Advanced Audio Coding — позиционируется как преемник MP3), Microsoft — свой собственный лицензируемый WMA (Windows Media Audio), кроме того, всё большую известность приобретает OGG Vorbis, а особо просветленные используют даже такой формат как Musepack. Который из этих кодеков выбрать?

Однозначного ответа на этот вопрос нет — и именно поэтому я пишу сию статью.

Выбор того или иного кодека зависит от конкретной задачи. А именно:

1. От оборудования и ПО, с помощью которого будет воспроизводиться звук. Т.е. от наличия поддержки того или иного формата аудио, а также качества воспроизведения (им желательно руководствоваться при выборе битрейта).

2. От объема памяти, который будет выделен под конечный материал. Соответственно подбирается больший или меньший целевой битрейт/качество.

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

Таким образом, алгоритм примерно следующий:

1) Выяснить, какие форматы поддерживает целевое устройство.
2) Определиться, сколько места вы сможете выделить под аудио материал, а также определить суммарную продолжительность аудио предназначенного для кодирования.
3) Вычислить нужный битрейт по формуле: битрейт = дисковое_пространство(в килобитах) / суммарная_продолжительность(в секундах).
4) В соответствии с битрейтом выбрать из поддерживаемых форматов оптимальный (об этом далее).
5) Подобрать наилучший кодер и параметры к нему.

image

  • поддержка более широкого набора форматов (вплоть до 48 каналов) и частот дискретизации звука (от 8 кГц до 96 кГц);
  • более эффективный и простой банк фильтров: гибридный банк фильтров МР3 был заменен обычным MDCT (модифицированным дискретным косинусным преобразованием);
  • более широкие пределы варьирования частотно-временного разрешения в банке фильтров — в восемь раз (в МР3 — в три раза) — привели к улучшению кодирования транзиентов (переходных процессов) и стационарных участков аудиосигнала;
  • более качественное кодирование частот выше 16 кГц;
  • более гибкий режим кодирования стереосигналов, позволяющий переключаться в режим M/S («joint stereo») независимо в различных частотных полосах;
  • дополнительные возможности стандарта, повышающие эффективность компрессии: технология формирования шума во временной области (TNS), предсказание MDCT-коэффициентов по времени (long term prediction), режим параметрического кодирования стереосигнала (parametric stereo), синтез шумов (perceptual noise substitution), технология восстановления высоких частот (SBR).
OGG Vorbis

image

Ogg Vorbis — это относительно новый универсальный формат аудио компрессии, официально вышедший летом 2002 года. Он принадлежит к тому же типу форматов, что и МР3, AAC, VQF и WMA, то есть к форматам компрессии с потерями. Психоакустическая модель, используемая в Ogg Vorbis, по принципам действия близка к МР3 и иже с ними, но и только — математическая обработка и практическая реализация этой модели в корне отличаются, что позволяет авторам объявить свой формат совершенно независимым от всех предшественников.
Главное неоспоримое преимущество формата Ogg Vorbis — это его полная открытость и свободность. Более того, в нем использована новейшая и наиболее качественная психоакустическая модель, из-за чего соотношение битрейт/качество значительно ниже, чем у других форматов. Как результат — качество звука лучше, но размер файла меньше.
В формате имеется большое количество достоинств. Например, формат Ogg Vorbis не ограничивает пользователя только двумя аудио каналами (стерео — левый и правый). Он поддерживает до 225 отдельных каналов с частотой дискретизации до 192kHz и разрядностью до 32bit (чего не позволяет ни один формат сжатия с потерями), поэтому Ogg Vorbis великолепно подходит для кодирования 6-ти канального звука DVD-Audio. К тому же, формат OGG Vorbis — sample accurate. Это гарантирует, что звуковые данные перед кодированием и после декодирования не будут иметь смещений или дополнительных/потерянных сэмплов относительно друг друга. Это легко оценить, когда вы кодируете non-stop музыку (когда один трек постепенно входит в другой) — в итоге сохранится целостность звука.
Возможностью потокового вещания сейчас никого не удивишь, но у этого формата она заложена с самых основ. Это дает формату достаточно полезный побочный эффект — в одном файле можно хранить несколько композиций с собственными тегами. При загрузке такого файла в плеер должны отобразиться все композиции, будто их загрузили из нескольких различных файлов.
Отдельно стоит упомянуть достаточно гибкую систему тегов. Заголовок тегов легко расширяется и позволяет включать тексты любой длины и сложности (например, текст песни), перемежающиеся изображениями (например, фотография обложки альбома). Текстовые теги хранятся в UTF-8, что позволяет писать хоть на всех языках одновременно и исключает возможные проблемы с кодировками. Это значительно удобнее различных ухищрений типа id3 тегов.
Ogg Vorbis по умолчанию использует переменный битрейт, при этом значения последнего не ограничены какими-то жесткими значениями, и он может варьироваться даже на 1kbps. При этом стоит заметить, что форматом жестко не ограничен максимальный битрейт, и при максимальных настройках кодирования он может варьироваться от 400kbps до 700kbps. Такой же гибкостью обладает частота дискретизации — пользователям предоставляется любой выбор в пределах от 2000Hz до 192000Hz.
Ogg Vorbis был разработан сообществом Xiphophorus для того, чтобы заменить все платные запатентованные аудио форматы. Несмотря на то, что это самый молодой формат из всех конкурентов МР3, Ogg Vorbis имеет полную поддержку на всех известных платформах (Windows, PocketPC, Symbian, DOS, Linux, MacOS, FreeBSD, BeOS и др.), а также большое количество аппаратных реализаций. Популярность на сегодняшний день значительно превосходит все альтернативные решения.
Стоит заметить, что Ogg Vorbis является всего лишь небольшой частью мультимедиа проекта Ogg Squish, в который также входят свободные кодировщики: Speex — для сжатия голоса; FLAC — для сжатия звука без потерь; Theora — для сжатия видео.

Musepack
  • Формат не производит второе dct-преобразование, он фактически не страдает артефактами pre-echo, в отличие от таких форматов как MP3, Vorbis, AAC и WMA.
  • Более эффективные алгоритмы переменного битрейта. Если проследить, как изменяется битрейт во время проигрывания треков MPC, можно заметить, что для более простых участков кодер выделяет меньший битрейт, а для сложных — значительно больший, иногда выше 400 (!) кбит/с. Так же тут стоит упомянуть один интересный факт: кодер МР3 в режиме VBR для тишины выделяет битрейт 32 кбит/с (при частоте дискретизации 44100 Гц), AAC и OGG Vorbis — 2кбит/с, Musepack же кодирует тишину с минимальными затратами, <1 кбит/с (например, минута тишины займет каких-то 514 байт). Всё это говорит о чрезвычайной «экономности» этого кодера.
  • Мощная и гибкая психоакустическая модель. Тут можно упомянуть, например, динамический НЧ фильтр на базе фреймов (в других кодерах устанавливается фиксированная полоса пропускания для каждой предустановки качества).
  • Более продвинутое сжатие, основанное на оптимизированных таблицах Хаффмана (тот же LAME MP3 впустую тратит около 20% битрейта — только лишь из-за несовершенного математического сжатия)

image

Windows Media Audio — лицензируемый формат файла, разработанный компанией Microsoft для хранения и трансляции аудиоинформации.

Изначально формат WMA рекламировался как альтернатива MP3, но на сегодняшний день Microsoft противопоставляет ему формат AAC. Номинально формат WMA характеризуется хорошей способностью сжатия, что позволяет ему «обходить» формат MP3 и конкурировать по параметрам с форматами Ogg Vorbis и AAC. Но как было показано независимыми тестами, а также при субъективной оценке, качество форматов всё-таки не является однозначно эквивалентным, а преимущество даже перед MP3 однозначным, как это утверждается компанией Microsoft.

Теперь непосредственно к сути дела.

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

И так, ниже я расскажу о наиболее подходящих для каждого отдельного случая кодерах, а также о правильном выборе параметров. Для конвертирования рекомендую использовать foobar2000 (подробно настройка конвертера описана здесь), собственно параметры указаны как раз для него. Кроме того, для foobar2000 есть большое количество полезных DSP, которые могут нам пригодиться для предварительной обработки аудио.

Для тех же, кто собирается конвертировать через консоль или другую программу: переменную %s надо заменить на имя файла-источника (или аналогичную переменную), а %d — на имя выходного файла.

Обратите внимание, что для каждого диапазона битрейта указаны возможные варианты форматов: первый — самый приоритетный. Если же ваш плеер не поддерживает первый вариант — обратите внимание на следующий, и т.д. Как я уже писал, внимания на самом деле сегодня достойны только три кодека — это AAC, OGG Vorbis и Musepack. WMA же, по причине своей закрытости, особым качеством не отличается, но всё же в большинстве случаев лучше, чем MP3. Учитывая, что некоторые устройства из альтернатив поддерживают только WMA, я буду давать рекомендации для каждого из четырех форматов.

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

Упоминаемые в этой статье, а также некоторые другие кодеры, с русскими описаниями основных параметров и рекомендациями можно найти здесь.

Сверхнизкие битрейты (

Этот диапазон прекрасно подходит для кодирования аудиокниг. И тут вариант может быть только один — AAC, а точнее, Nero AAC. Параметры следующие:

-lc -q 0.35 -ignorelength -if - -of %d

При этом материал должен быть предварительно преобразован в моно и ресемплирован до частоты 22050 Гц (желательно ресемплером SoX). На выходе получим обычное Low Complexity AAC с битрейтом около 25 кбит/с.

Для музыки в этом диапазоне тоже есть варианты:

1) Nero AAC. Тут никаких преобразований не нужно:

-q 0.15 -ignorelength -if - -of %d

На выходе — High Efficiency AAC v2 (с параметрическим стерео и синтезом ВЧ),

35 кбит/с. Прекрасный вариант для какого-нибудь интернет-радио. Только тут надо не забывать, что декодер в плеере должен поддерживать HE-AACv2, иначе получите полное отсутствие ВЧ и монофонию.

2) OGG Vorbis AoTuV — данная модификация libvorbis включает усовершенствование алгоритма кодирования с низкими битрейтами и, даже без технологии SBR, не сильно уступает HE-AACv2. Командная строка:

Полученные таким образом файлы должны быть полностью совместимы со стандартными декодерами OGG Vorbis. Битрейт — аналогичный — около 35 кбит/с.

3) WMA 10 Pro. Для таких случаев у Microsoft тоже есть что-то наподобие SBR (синтез ВЧ), звучит не так плохо, как могло бы. Правда битрейт чуть выходит за рамки — 48 кбит/с.

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 48_44_2_16 -input %s -output %d

Учтите, что старые (особенно «железные») декодеры не поддерживают WMA 10. Для такого случая можно использовать WMA 9.2 (кодер тот же), правда, его качество на низких битрейтах значительно хуже.

-silent -a_codec WMA9STD -a_mode 3 -a_setting 48_44_2 -input %s -output %d

Низкий битрейт,

1) QuickTime AAC — победитель (если не считать новоиспеченный Opus/CELT) того самого теста. Ниже указаны настройки для кодера QAAC:

-s -v 64 --he -q 2 --ignorelength - -o %d

На выходе имеем HE-AAC (с SBR, но без Parametric Stereo), что должно поддерживаться различными iPod'ами и тому подобным.

2) OGG Vorbis AoTuV — хоть и оказался довольно далеко от QAAC, но всё же:

3) И на всякий случай WMA 10 Pro:

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 64_44_2_16 -input %s -output %d

Для старых декодеров — WMA 9 Standard:

-silent -a_codec WMA9STD -a_mode 3 -a_setting 64_44_2 -input %s -output %d

Чуть выше,

А этот битрейт я рассматриваю уже из-за Vorbis.

1) Как показали тесты, лучше всего с ним справляется кодер OGG Vorbis AoTuV:

2) Nero AAC — очень неплохой результат. В местах, где высокие выражены не так ярко, может звучать даже лучше Vorbis'а (на высоких проигрывает из-за синтеза).
30 -ignorelength -if — -of %d

Используемый профиль — HE-AAC.

Стандарт де-факто, 128 кбит/с

Интересный факт: многие утверждают, что для MP3 128 кбит/с — «пограничный битрейт», с которого начинается неотличимое от оригинала качество. Пожалуй, это так… для пластмассовых китайских колонок с блатняком. Реально же этот порог находится где-то около 200 кбит/с, при чем новые форматы дают на этом битрейте более стабильное качество.

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

-q 0.40 -ignorelength -if - -of %d

Профиль — обычный AAC LC.

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 128_44_2_24 -input %s -output %d

Для старых декодеров — WMA 9 Standard:

-silent -a_codec WMA9STD -a_mode 3 -a_setting 128_44_2 -input %s -output %d

В этом диапазоне разница межу кодерами Nero, QuickTime AAC и Vorbis практически сходит на нет. Но здесь уже на сцену выходит тот самый Musepack. Как раз на этих битрейтах начинает проявляться его преимущество (за счет необычайно гибкого VBR режима, а также принципиально другого алгоритма сжатия):

1) Musepack --silent --quality 5 - %d

2) Nero AAC -q 0.50 -ignorelength -if - -of %d

-silent -a_codec WMA9STD -a_mode 3 -a_setting 160_44_2 -input %s -output %d

Порог прозрачности:

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

Кстати, у LAME MP3 в этом районе тоже находится подобный порог (VBR V2), но у этого кодека очень большие проблемы с пре-эхом (искажения предшествующие резким всплескам сигнала), а на слух часто ощущается Noise Shaping (шумы от ошибок квантования таким образом переносятся в высокочастотную область).

У таких же кодеков, как Vorbis, AAC и MPC на этом пороге начинается четкая прорисовка в композициях даже фоновых шумов.

1) Musepack --silent --quality 6 - %d

2) Nero AAC -q 0.55 -ignorelength -if - -of %d

-silent -a_codec WMA9PRO -a_mode 3 -a_setting 192_44_2_24 -input %s -output %d

WMA 9 Standard, максимальный битрейт воспринимаемый старыми декодерами:

-silent -a_codec WMA9STD -a_mode 3 -a_setting 192_44_2 -input %s -output %d

Разумный максимум:

225 кбит/с повышение битрейта чаще всего уже не дает слышимого прироста качества, а размер файлов, естественно увеличивается. Но всё же, для особенно сложных композиций (и хорошей аппаратуры/ушей) существуют более высокие настройки качества. На этих битрейтах для таких кодеров как Museppack и Vorbis мне даже не удалось найти киллер-семплов (проблемные семплы, на которых явно проявляются недостатки алгоритма кодирования). И так:

2) Musepack --silent --quality 10 - %d

3) QAAC -s -V 127 -q 2 --ignorelength - -o %d

4) WMA 10 Pro -silent -a_codec WMA9PRO -a_mode 3 -a_setting 384_44_2_24 -input %s -output %d

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

Вот, собственно, и всё, чем я хотел с вами поделиться. Пробуйте, комментируйте, задавайте вопросы.

Читайте также: