WebSound.ru Home
    Главная | Комментарии | Архив выпусков | Форум и чат | AudioTag.info | Музоблог | reTracked | Авторский блог  



  Поиск:

Поиск по WebSound.Ru:
Поиск в Интернете:
Powered by




  Партнеры, реклама:




Audio watermarking
TrustedAudio.com



 

В поисках идеального звука

© 2002-2003 Тарас Бризицкий [SacRat]
sacrat@newmail.ru
18.Mar.2003

Все права в отношении данного документа принадлежат автору. Воспроизведение данного текста или его части разрешается только с письменного разрешения автора.

Целью данного материала является рассмотрение основ создания музыкальной коллекции архивного качества, т.е. приближенной к оригиналу настолько, что разница при воспроизведении оригинала и декодированного файлы не заметна на слух даже в случае использования аппаратуры высокого качества (музыкальные центры среднего и высокого класса, блочные Hi-Fi стереосистемы). Разумеется, при создании подобной фонотеки лучше всего забыть про старый добрый MP3 с постоянным битрейтом 128Кб/с, наиболее популярный сейчас формат для передачи музыки через Интернет или составления сборников «10 в 1». Файлы, которые мы попробуем создавать, будут иметь значительно (до двух и более раз) больший объем и, как следствие, значительно более высокое качество. Дело в том, что при прослушивании музыки через компьютерные колонки и стереосистему действуют различные стандарты качества. В случае компьютера понижение качества сжатого файла может быть незаметным, в то время как более совершенные компоненты стереосистемы заставят вас ощутить разницу на слух уже в первые секунды воспроизведения. Если говорить о lossy форматах, т.е. использующих сжатие с потерями, то повышение битрейта позволяет не только избежать заметной деградации звука, но и избавиться от так называемых артефактов, огрехов кодирования, которые могут проявляться при меньших битрейтах.

Немного о форматах

Первым делом необходимо определиться с выбором формата кодирования. Тут все зависит от ряда причин: количества доступного места для хранений файлов (на винчестере, дисках CD-R, CD-RW, DVD-R и т.д.), желания обеспечить максимальное качество или максимальную совместимость с уже имеющейся аппаратурой.

В принципе, идеальным вариантом может быть хранение музыкальных файлов в одном из loseless форматов, которые позволяют сохранить абсолютно точную копию сжимаемых файлов, но имеют относительно небольшую степень компрессии (обычно 1:2). При этом вы в любой момент сможете создать копию оригинального компакт-диска в формате CD audio, а также произвести транскодирование (transcoding, перевод из одного формата в другой) нужной композиции в любой другой формат. Недостатком данного метода является тот факт, что loseless файлы обычно имеют достаточно большой размер и при записи на CD-R вы, скорее всего не сможете записать на один диск более двух альбомов. Из всех существующих на данный момент форматов сжатия звука без потерь я посоветовал бы обратить внимание прежде всего на Monkey’s Audio и FLAC. Первый имеет большую скорость работы и высокую степень компрессии, второй – хорошую поддержку в альтернативных ОС (Lynux и пр.). По степени компрессии современные loseless (работающие в режиме сжатия без потерь) кодеки отличаются не очень сильно, основные отличия касаются, прежде всего, скорости работы, удобства в настройки и использовании.

Выбор среди lossy форматов на первый взгляд больше. Тем не менее, это не совсем так. Дело в том, что не все современные форматы сжатия звука с потерями позволяют добиться качества, сравнимого на слух с оригиналом. Прежде всего это касается кодеков, изначально ориентированных на создание файлов малого размера, например, VQF или MP3pro. Первый формат практически мертв, а возможности второго значительно более ограничены, чем у его прародителя MP3. То же можно и сказать о формате Windows Media Audio: все версии кодека вплоть до WMA8 не позволяли использовать его для архивного хранений музыки, так как даже на максимально доступном битрейте можно было услышать типичные для данного формата артефакты. Тем не менее, выбор у вас есть. Современные кодировщики форматов MP3, AAC, Musepack и OGG Vorbis позволяют получать файлы, в большинстве случаев неотличимые на слух от оригинала при степени компрессии примерно 1:5. Что же имеется ввиду под «большинством случаев»? Дело в том, что существуют так называемые «проблемные сэмплы» (достаточно хорошо известные для каждого из форматов). Т.е. в отдельных случаях кодировщик оказывается неспособным качественно воспроизвести тот или иной звуковой фрагмент и разница будет заметной на слух. В некоторых случаях для того, чтобы заметить разницу, необходимо проводить ABX (http://www.pcabx.com) тесты, в некоторых достаточно лишь внимательно вслушаться в кодированный фрагмент. Наиболее сложными для современных кодеков являются короткие резкие звуки, которые могут до определенной степени искажаться при кодировании. Несмотря на это, подавляющее большинство материала будет звучать идеально и на слух неотличимо от первоначальной записи на CD. Следует сказать, что на данный момент нет lossy кодировщика, способного идеально сжать любой звуковой фрагмент так, чтобы он не отличался на звук от оригинала в ABX тесте: каждый кодер имеет свои трудности со сжатием тех или иных звуковых фрагментов. Разница лишь в том, насколько часто и как сильно он будет «ошибаться». В редких случаях разница может быть очевидной, чаще всего – практически незаметной.

Musepack (MPC, ранее MPEGplus) – наиболее совершенный из современных кодеков, которые можно использовать для архивного хранений музыки с CD. Работая в режиме VBR данный формат позволяет создавать файлы практически с идеальным звучанием при минимальном размере. Несмотря на это, даже в случае сжатия так называемых «проблемных сэмплов» разница в звуке будет различима только при многократном прямом A-B сравнении исходного и кодированного фрагментов. Для архивного кодирования следует воспользоваться следующими параметрами командной строки: «mppenc –normal –xlevel [in.wav][out.mpc]», где [in] и [out] - имена исходного и кодированного файлов с соответствующими расширениями. При отсутствии опыта работы с командной строкой Windows можно воспользоваться программами-оболочками MuseDrop и MPC Batch Encoder. Средний битрейт полученных файлов будет находиться в диапазоне от 140 (для спокойной классической музыки) до 180 (рок музыка и электроника) килобит в секунду. В то же время битрейт отдельных фрагментов композиции может подниматься до 600 Кб/с и выше.

MP3. несмотря на наличие альтернатив, использование данного формата оправдано в значительной степени из-за большого количества аппаратных проигрывателей (это современные Flash/CD MP3 плееры, автомагнитолы и DVD проигрыватели) и большой совместимости, т.к. файлы данного формата можно проиграть практически на любом персональном компьютере без необходимости установки дополнительного ПО. Для создания файлов MP3 лучше всего воспользоваться бесплатным кодировщиком lame со следующими параметрами командной строки: «lame –alt-preset standard [in.wav] [out.mp3]» или «lame –alt-preset insane [in.wav] [out.mp3]». Во втором случае вы получаете возможность создавать файлы максимально возможного для формата MP3 качества, при этом в полтора-два раза большего размера, чем в случае использования пресета alt-preset standard. Использование alt-preset standard позволяет создавать файлы, в подавляющем большинстве случаев идентичные по качеству первоначальным, и лишь в редких случаях немного проигрывающие alt-preset insane. Стоит отметить, что создание MP3 файлов с использованием alt-preset standard – задача достаточно ресурсоемкая и на компьютерах с процессормами уровня 300МГц для кодирования одного альбома может потребоваться несколько часов. Если же время создания файла критично, то в качестве альтернативы можно посоветовать использовать atl-preset fast standard или alt-preset insane. Использование «быстрых» альт-пресетов позволит значительно сократить время кодирования при минимальных изменениях размера или качества; alt-preset insane, использующий режим кодирования с постоянным битрейтом работает еще быстрее.

Ситуация с OGG Vorbis немного сложнее. С одной стороны, возможность получить файлы почти идеального качества, используя параметр –q6 (quality 6), с другой – недостаточно хорошая настройка высоких битрейтов кодировщиков данного формата и наличие сэмплов, на которых OGG Vorbis значительно проигрывает MP3 и MPC файлам. Впрочем, учитывая нынешнюю популярность OGG и его преимущества перед MP3, создание музыкальной коллекции в данном формате может быть оправдано. В отличие от «обычного» oggenc, ныне находящийся в стадии разработки кодировщик GT3 (Garf Tuned) обещает обеспечить улучшение качества высоких битрейтов, таким образом позволяя создавать копии композиций архивного качества.

AAC. Данный формат является ISO стандартом и имеет значительную поддержку со стороны крупных компаний и корпораций. На данный момент формат не слишком активно используется для архивирования музыки, хотя и позволяет создавать высококачественные копии файлов с компакт диска с использованием пресета Archive (для кодировщика psytel). Для создания вам потребуется кодировщик, работающий с командной строки и графическая оболочка psyteldrop, позволяющая создавать файлы AAC без необходимости разбираться с различными параметрами командной строки.

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

Начало работы

Итак, с выбором формата вы, наверное, уже определились. Теперь наступает самая ответственная часть: собственно копирование содержимого компакт дисков на винчестер с последующим сжатием. Для начала нам понадобится программа-риппер (ripper), позволяющая считывать дорожки с аудио CD в wave файлы. Несмотря на кажущуюся простоту задачи, она в действительности нетривиальна. Дело в том, что далеко не все компьютеры оборудованы высококачественными приводами CD-ROM, позволяющими вести точное считывание звуковых дорожек с компакт дисков, а сами диски не всегда находятся в идеальном состоянии, на них могут присутствовать царапины, отпечатки пальцев (пора бы вспомнить о том, как правильно хранить «компакты») и т.д. И если избавиться от пыли достаточно просто (протерев диск мягкой тканью от центра к краям), то в случае наличия царапин (особенно глубоких) ситуация усложняется. В Интернет вы наверняка встретите множество хитроумных способов избавления от небольших царапин и повреждений, так что я не буду останавливаться на этом процессе.

Подавляющее большинство современных рипперов (WinDAC, Audiograbber и т.д.) рассчитаны на работу в идеальных условиях: качественный привод CD-ROM, идеальная поверхность компакт диска и т.д. Тем не менее, на практике это не всегда так. Для того, чтобы получить высококачественную копию с CD лучше всего воспользоваться более серьезными программами вроде CD_ex или EAC. Последняя программа, согласно своему названию Exact Audio Copy (точное копирование звука) прекрасно обходится и с дисками, имеющими сильно поцарапанную поверхность, позволяя получить копию максимально высокого качества. Разумеется, за все надо платить, поэтому время работы EAC больше, чем в случае использование более простых Audiograbber или WinDAC. Возможно, первоначальная настройка программы может показаться вам слишком сложной, хотя в той же Сети есть подробные рекомендации по ее детальной настройке. EAC также позволяет кодировать файлы в тот или иной формат после копирования их на винчестер (советую забыть про сжатие «на лету», т.к. в этом случае в жертву приносится качество). Для того чтобы осуществить компрессию, достаточно указать программе формат, в который необходимо осуществлять кодирование, а также осуществить базовую настройку кодировщика. В случае если кодировщик нужного вам формата отсутствует по умолчанию, можно настроить программу на работу с внешним кодером, позволяющем осуществлять кодирование с командной строки.

Для сжатия музыкальных записей можно также использовать отдельные кодировщики, работающие с командной строки или имеющие графическую оболочку. Здесь все зависит от личных предпочтений. Лично мне удобнее использовать EAC в качестве кодировщика: при правильной настройке программа сама произведет кодирование файлов и запишет теги. Выбор графических оболочек к кодировщикам на данный момент достаточно велик. Для MP3 это LamedropXPd, WinLAME, Razorlame, Lamedrop и т.д. Наиболее доступными новичкам скорее всего покажутся первые две. Из OGG Vorbis кодировщиков можно выделить WinVorbis (также позволяющий работать с тегами OGG comments) и OGGdrop/OGGdropXPd (второй обладает большими возможностями настройки). Для psytel AAC (если вы используете этот кодировщик) можно использовать psyteldrop, я для Musepack – musedrop или MPC batch encoder. В качестве графической оболочки для loseless кодировщиков можно использовать фронтенд Monkeysaudio. В случае работы с консольными кодировщиками несложно частично автоматизировать работу за счет написания собственных скриптов и командных файлов.

Помните, что в случае использования звуковых кодировщиков часто действует принцип «новый не значит лучший». Разумеется, я не призываю вас к использованию кодеков пятилетней давности, это будет как минимум неразумно. Тем не менее, стоит всячески остерегаться использования различных альфа и бета (исключением является лишь формат musepack, «беты» которого практически приравниваются к стабильным релизам) версий кодировщиков. Идеальным вариантом будет использование рекомендованных версий кодировщика. Для lame это версии 3.90.2 и 3.92.

Организация фонотеки

Для организации фонотеки и приведения ее в порядок вам наверняка понадобятся несколько дополнительных утилит. Первая – это так называемый тэггер (tagger), программа, позволяющая редактировать информацию об исполнителе, названии композиции, а также переименовывать файлы в соответствии с этими данными. Для файлов различных форматов существуют различные форматы тэгов: Ogg Comments, APE1, APE2, ID3V1.0-ID3V2.4, Lyrics 3 и т.д. Не буду подробно описывать достоинства или недостатки того или иного формата, это тема отдельного разговора. Лишь оговорюсь, что с файлами MP3 следует по возможности использовать тэги формата ID3v1.1, а для Musepack – APE2, а также на засорять теги лишней информацией (рисунки, звуковые фрагменты и т.д.) Наиболее «продвинутым» из ныне существующих является программа TAG, работающая с тэгами практически всех ныне существующих форматов, но не имеющая графического интерфейса. Для работы с MP3 и OGG файлами больше подойдут бесплатные графические программы вроде Tagscanner.

Encspot – еще одна полезная утилита, позволяющая получить дополнительную информацию об MP3 и MPC файлах. Она может достаточно быстро сортировать MP3 файлы в зависимости от используемого кодировщика, битрейта и параметров кодирования. Данная программа может оказаться очень полезной не только при навигации по фонотеке, но и при работе с файлами, происхождение которых сомнительно (лучше всего подобные файлы просто удалять).

Replaygain – серия небольших консольных утилит, известных профессионалам, но не слишком распространенных у новичков. Эти программы позволяют решить проблемы с различными уровнями громкости у разных фонограмм. Простейший пример: рок-композиция и симфоническое произведение. В первом случае запись наверняка будет компрессованной, т.е. разница громкости на протяжении всей композиции будет минимальна. В случае классической музыки возможны значительные перепады громкости как на протяжении одной композиции, так и на всем диске. Это обусловлено разным характером самой музыки: классические произведения обычно гораздо более динамичны, чем рок или поп произведения. При последовательном проигрывании этих произведений будет ощущаться явный дискомфорт: т.к. классическая музыка будет звучать значительно «тише». Для устранения этого «недостатка» можно использовать два метода: произвести так называемую нормализацию классического произведения, что уменьшит колебания громкости, но приведет к недопустимым искажениям динамики (мы же говорим о высококачественных копиях!). Второй метод состоит в записи небольшого объема информации об уровне громкости и пиков в заголовок или тэг файлов. В этом случае проигрыватель, поддерживающий данную функцию, сможет считать информацию из файла и самостоятельно отрегулировать громкость в зависимости от композиции. Информацию об уровнях громкости и пиках можно также безболезненно удалить, не изменяя сам файл. Программы replaygain (подробная техническая информация на http://replaygain.hydrogenaudio.org) служат для записи подобной информации в файлы. Для разных типов файлов существуют свои программы: Replaygain для MPC (в данном формате поддержка replaygain реализована наиболее полно), Vorbisgain для OGG Vorbis (запись в теги), MP3gain для файлов формата MP3 и wavegain для PCM WAV файлов. Сразу оговорюсь, что использование replaygain для MP3 файлов не требует поддержки со стороны плеера и эти изменения являются лишь частично обратимыми (вся нужная информация содержится в заголовках фреймов, поэтому для отмены изменений необходимо сохранить все лог файлы), а в случае Wavegain – необратимыми.

Запись и воспроизведение

Выбор средств хранения данных также разнообразен. Если объем дискового пространства ограничен, то лучше всего производить запись на компакт диски CD-R, благо цена на пишущие приводы и сами болванки невысока. Среди всех производителей компакт дисков наиболее надежными считаются изделия заводов Tayo Yuden и Ritek (диски TraxData, Verbatim, TDK, Fuji). Для того чтобы определить завод-изготовитель той или иной «болванки», можно воспользоваться бесплатной утилитой CDR Identifier (http://www.gum.de/cdrid). Подробную информацию по записи данных (в том числе музыки) можно получить на сайте CD-RW.org (http://www.cd-rw.org).

Для прослушивания записанной музыки на компьютере можно воспользоваться одним из многочисленных медиапроигрывателей, например Winamp 2.81, для которого существуют плагины воспроизведения музыки практически любого формата. В случае если вам необходим более простой, но качественный проигрыватель с минимумом «наворотов», советую обратить внимание на Foobar2000 (http://foobar2000.hydrogenaudio.org), исправно воспроизводящий музыку и потребляющий минимум системных ресурсов. Создается Foobar, между прочим, тем же человеком, который написал значительную часть плагинов ввода/вывода для обеих версий Winamp.

Владельцы аппаратных проигрывателей находятся чуть в более сложном положении. Несмотря на то, что сейчас на рынке существует множество различных аппаратных проигрывателей MP3 (немалая их часть поддерживает также формат WMA), далеко не все они, вопреки заявлениям разработчиков являются полноценными проигрывателями. Дело в том, что некоторые CD/MP3, DVD плееры и автомагнитолы, на лицевой панели которых красуется значок “MP3 playback” не позволяют воспроизводить файлы, кодированные с переменным битрейтом, а также MP3 файлы с битрейтом 320Кб/с. В случае, если вы являетесь «счастливым» владельцем подобного аппарата, вам можно лишь посочувствовать и дать совет использовать альтернативные настройки lame, например «--alt-preset CBR 256» (для создания MP3 файлов с постоянным битрейтом 256Кб/с). Если же вы только собираетесь приобрести аппаратный проигрыватель MP3, то я бы порекомендовал перед покупкой внимательно изучить инструкцию на предмет наличия подобных «подводных камней». В случае DVD плееров, музыкальных центров или автомагнитол все может зависеть от конкретной модели, среди портативных MP3 проигрывателей я бы посоветовал обратить ваше внимание на продукцию компании iRiver (http://www.iriver.com). Некоторые проигрыватели также содержат различные «улучшатели», результат работы которых может быть противоположным планированного разработчиками: обычно толк от подобных ухищрений бывает лишь в случае воспроизведения MP3 записей низкого качества. Что касается проигрывателей файлов форматов, отличных от MP3, то на данный момент число их незначительно: аппаратные плееры FLAC и AAC уже существуют, а проигрыватели OGG Vorbis готовятся к выпуску. Что же касается Musepack, то его пользователи вряд ли смогут в ближайшее время рассчитывать на появление DVD или CD проигрывателей с поддержкой данного формата.

Несколько слов о транскодировании или перекодировке файлов из одного lossy формата в другой. Старайтесь по возможности избегать перекодирования между различными форматами, использующими сжатие с потерями. Любое подобное преобразование ухудшает качество, а многократное перекодирование способно испортить любую запись. В случае если необходимо иметь нужную запись в другом формате (например, для использования в аппаратном проигрывателе), следует по возможности провести ее кодирование заново с оригинального компакт диска или loseless файла, а использовать транскодирование лишь в качестве последнего средства, когда диск, с которого изначально велась запись недоступен.

Полезные ссылки

http://websound.ru/articles/technol/formats.htm - моя статья, посвященная различным звуковым форматам
http://www.hydrogenaudio.org - сайт, посвященный различным тонкостям сжатия и кодирования звука
http://www.hydrogenaudio.org/index.php?s=3d87657b5f4a896ac181e7666c864912&act=Print&client=printer&f=1&t=4917 - секция FAQ сайта Hydrogenaudio. Обязательна к прочтению!