bocharoff (bocharoff) wrote,
bocharoff
bocharoff

Categories:

Снова об mp3/ AAC кодировании

Кодирование с компрессионными потерями для меня, как для круглосуточного пользователя iPod - камень преткновения и способ борьбы с бессонницей. Я уже не раз писал заметки и материалы на эту тему (один мой массивный труд был опубликован года 3 назад в "Игромании"), но я его даже приводить не буду, ибо с тех пор изменилось очень многое.
Постараюсь вкратце рассказать о сегодняшнем положении дел.
Практически каждый день на протяжении многих лет я экспериментирую с различными кодеками, программами граббинга и воспроизведения и параллельно перебираю множество наушников, плееров и компьютерных программ и даже платформ.
Каковы краткие (промежуточные) итоги? Промежуточные - потому что через год наверняка изменится что-то еще.

1. Итак, последнему ежу понятно, что сграбленный диск будет звучать идеально только в случае кодирования без потерь. У большинства это ассоциируется со стандартными файлами WAV, но в реальности сейчас ими смысла пользоваться практически нет. Потому что появились т.н. lossless кодеки, которые немного (обычно наполовину) ужимают аудиопоток не внося в него акустических изменений. Таких форматов много, сравнительную таблицу можно посмотреть во многих местах, например на:
http://members.home.nl/w.speek/comparison.htm

Безусловно за lossless форматами будущее, по большому счету я мог бы и сейчас на них пересесть, если бы не ряд нюансов. Во-первых моя коллекция (около 2.300 CD) в Lossless формате потребует нереально много дискового пространства. Но это не беда, тем паче с астрономическим ростом вместимости современных жестких дисков. Однако же для iPod это критично - у меня на него и так ничего не влезает, и не влезет даже после покупки 80-гигового плеера. Во-вторых портативные плееры с жестким диском (тот же iPod) при использовании массивных файлов почти непрерывно обращаются к диску, от чего срок работы аккумуляторов заметно снижается. В-третих ни один из lossless форматов пока что не обрабатывается программами выравнивания громкости вроде mp3gain. Те, кто привык к mp3gain знают, что заставить себя отказаться от ее услуг практически невозможно - себе дороже. 4. Да и не все плееры понимают эти форматы. Например iPod работает с форматом Apple Lossless, но его зато не проглатывает никто другой.
Потому я пока еще остаюсь приверженцем архивирования с потерями.

2. Самый универсальный на сегодняшний день формат психоакустического сжатия - mp3. С ним никаких проблем кроме того, что ему уже тысяча лет и давно доказано, что он далеко не лучший. На смену ему пришли всевозможные mp3-pro, ogg vorbis, aac и wma. Проблема лишь в одном - в совместимости. Если программные проблемы практически решены, то хардварные плееры и мобильные телефоны привиредничают и воспроизводят обычно 2-3 из них по своему усмотрению. Покупая iPod ты автоматически соглашаешься с тем, что будешь использовать либо mp3, либо aac. Последний, к счастью, уже поддерживается почти всеми брендовыми мобильниками и даже многими DVD-плеерами. Но вот флэш-плееры и HD-плееры дружат с ним далеко не поголовно.
Тем не менее бешеная популярность iPod, сервиса iTunes и агрессивная политика мэйджоров ведет к тому, что в ближайшие годы aac (иногда называемый mp4) грозит стать доминирующим на рынке форматом сжатия. Даже на пресловутом ресурсе allofmp3 поддержка aac осуществляется, кажется, активней остальных.
Если к этому добавить что спецификации формата aac подразумевают возможность кодирования пятиканального звука, ситуация станет еще прозрачней.

Поэтому сейчас я остановлюсь на более подробном сопоставлении mp3 и aac.

3. Технологи утверждают, что алгоритм психоакустической фильтрации в mp3 и aac совершенно разный. Это слышно. Дело даже не в том, что из них лучше, а что из них хуже - они просто звучат по разному на самом деле.
Оговорюсь сразу - все мои дальнейшие разговоры об mp3 относятся к файлам, создаваемым кодеком lame (думаю, этот выбор читателю понятен).
Когда я впервые стал кодировать и сравнивать файлы mp3 и aac я столкнулся с тем, что aac файлы звучат чище и качественнее. Причем ощутимо это в большом диапазоне битрейтов - от 96 до 192 килобит в секунду. Но при этом aac звук был более механическим, с какой-то железной жестью. У меня родилось подозрение (до сих пор ничем не опровергнутое), что aac-кодеки отсеивают не просто "мелкие" звуки, как это делает mp3, а избыточные и паразитные гармоники. То есть делает своего рода ремастеринг - вычищая шум и искажения, за счет них сокращая объем файла. Но это же лишает звук его "живости". Поэтому если ты привык кодировать файлы в этом диапазоне битрейтов, лучше сразу реши что для тебя важнее. К тому же файлы aac, созданные с этими параметрами звучат несколько более плоско, чем mp3 - думаю, что виною тому алгоритмы т.н. joint stereo, то есть кодек тупо ослабляет разделение каналов. Несмотря на это в iPod, например, aac-файлы звучат все же приятнее на слух, но тут мы еще обязаны оговориться, что в дело вмешивается еще декодеры фирмы apple, которые возможно aac раскодируют более аккуратно, чем mp3. По-крайней мере в WinAmp разница между mp3 и aac чуть менее ощутима.

4. С переходом на более высокие битрейты происходит переход количественных изменений в качественные. На рубеже 224 килобит в секунду с aac-файлами происходит чудесная трансформция - звук становится рельефным. Повышение битрейта mp3 файлов со 192 до 320 килобит/сек лишь немного уменьшает искажения, добавляет детальность и выпрямляет АЧХ (выражение не совсем корректное, но отображает суть дела, так как один из столпов компрессии - ущемление менее используемых частот из всего диапазона в пользу самых активных). В то же время при аналогичном повышении битрейта aac файлы воистину преображаются и переходят на качественно новый уровень - они оживают.
Если человек является обладателем мало-мальски пристойных плеерных наушников (Sennheiser или AKG от 40 у.е. и выше) он чувствует ошеломительную разницу - в этом мне признались даже люди далекие от аудиофилии. И обладающие худшими наушниками, кстати.
Еще следует добавить информацию, которую обычно скрывают от широкой публики - большинство кодировщиков mp3 и aac с повышением битрейта по умолчанию делают еще одну важную вещь - расширяют диапазон доступных частот. Для экономии места на низких битрейтах кодеки срезают самые низкие и самые высокие частоты. И чем выше выставляется битрейт, тем дальше отодвигаются рамки частотного обрезания.

Поэтому если у тебя есть желание и возможность работать с битрейтом 224 и выше - лучше не пренебрегай им, и предпочти aac.

5. Теперь самое хитрое. Кодеков aac существует великое множество (хотя и меньше, чем mp3). Но два доминируют в компьютерном мире - кодек QuickTime от Apple (используемый в iTunes) и кодек Nero (встроенный в Ahead Nero, но с недавних пор выдаваемый бесплатно).
Здесь я столкнулся с интересным явлением. Почти все аудио-сайты в Сети, публикующие сравнительные тесты этих кодеков отдают предпочтение Apple'овскому. Я сам, как старый добрый любитель Apple использовал его с оптимизмом и без задних мыслей.
Но все-же решил испытать кодек от Nero, потому что в отличие от "яблочного" он позволяет реализовать реальный переменный битрейт (VBR). Да, iTunes уверяет нас, что он тоже способен кодировать aac с переменным битрейтом. Мало того - есть мнение, что изначальная специфика стандарта aac такова, что он является переменным с рождения. В реальности это не так - "яблочный" aac ведет себя не как vbr, а как abr (усредненный битрейт), что является промежуточной стадией между неэффективным постоянным битрейтом (cbr) и собственно vbr. Это не совсем хорошо.
Кодек Nero в реальности отслеживает трансформации звукового потока и на выходе дает файлы трудно предсказуемого размера, но адекватного качества.
Ну так вот, лишь только я начал экспериментировать с кодеком Nero, как обнаружил, что он звучит лучше, чем Apple! Он дает совсем другой звук - более сочный и глубокий. Ресурсов, правда, перегонка жрет изрядно - файлы кодируются неторопливо, но зато какая радость в итоге!
Это противоречит большинству схем, таблиц, диаграм и измерений осциллографами, публикуемых в Сети. Но люди образованные в звуке скажут тебе, что сигнал осциллографа - это одно, а человеческое ухо - совсем другая штука. Так вот на испытательном стенде Apple aac ведет себя лучше Nero, а в ушах (по-крайней мере в моих) все с точностью до наоборот. Не исключено, правда, что Nero несколько приукрашает звук, а "яблочный" кодек осуществляет дотошную прямолинейную кодировку, но меня эти подозрения не пугают - тем более, что никаких подтверждений/опровержений сих подозрений в Сети я не нашел.
Неудивительно, что в итоге я предал iTunes и остановился на Nero, хотя это сильно усложнило процесс перегонки. Раньше я просто вставлял диск, запускал iTunes - и файл (с последующей обработкой в mp3gain) уже в библиотеке. Теперь же мне пришлось долго настраивать внешний граббер (любимый всеми EAC), цеплять к нему кодек, править ID-тэги внешней программой, прогонять через mp3gain и только после этого сливать файл в библиотеку iTunes. Возни много, но звук фантастический.
Самое забавное, что "яблочный" кодек позволяет кодировать файлы с максимальным битрейтом 320 кбит/с. А кодек Nero при желании может делать файлы, зашкаливающие за 400! И оказывается, что iPod такие файлы жрет без проблем. Про качество можно не говорить - все мои придирки оказались бесполезны, разницы с lossless файлами я не обнаружил, хотя долго пытался.
Кстати, при приближении битрейтов (и "яблочных" и "nero") к 256-320 килобитам музыка избавилась от самого неприятного артефакта компрессии - свисту шипящих звуков, который изредка возникает когда вокалист произносит звуки "ш", "с", "ч", "ц" или "щ". Большинство слушателей этого никогда не замечают, а мне оно действует на нервы. Долгое время я думал, что это неизлечимо, оказывается - даже такое чудо в наше время кодекам под силу.

6. Резюме.
Кодек aac Apple QuickTime на 224 килобитах дает детализированный, четкий звук, с прекрасным позиционированием инструментов - то есть ты уже можешь определить на каком относительном растоянии от микрофона находится тот или иной музыкант. А главное - вокал уже существует отдельно от остальных инструментов, в то время как на более низких битрейтах он с ними сливается в монолитную массу. На 320 килобитах "яблочный" aac звучит идеально, но все же в нем улавливается некая "механичность" и жесткость звука. Которая, правда, совсем не раздражает слух, а иногда (при прослушивании хэви-метала или электронной музыки) даже приятна.
Кодек Nero при параметре качества 50 (итоговый "плавающий" битрейт около 192) приятен на слух и лишен каких-либо существенных дефектов. При параметре качества 80 (битрейт плавает в районе 320 килобит) саунд нереально живой и естественный. Надо ли больше? При тех наушниках и акустике, которым обладает 99% пользователей - вряд ли.
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 183 comments
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →