Из слона муху: практика
АрхивПодводя итоги, мы решили провести небольшой слепой тест, призванный отобразить текущее положение дел среди аудиоформатов.
Подводя итоги, мы решили провести небольшой слепой тест, призванный отобразить текущее положение дел среди аудиоформатов.
Тестирование выполнялось в условиях, максимально близких к «полевым», то есть тех, в которых скорее всего окажется технически неподготовленный пользователь. Тестовым компьютером служил Athlon 1800+, 512 Mбайт DDR RAM, под управлением ОС Windows XP pro (SP1), снабженный интегрированным модулем Realtek AC’97 (материнская плата Gigabyte 7VKMP). Звук воспроизводился через наушники Aiwa HP-X225, подключенные непосредственно к выходу звуковой карты. Таким образом, в нашем распоряжении была классическая low-fi звуковая система современного мультимедийного ПК.
При прослушивании фрагментов «эксперт» не знал, каким именно кодеком сжат сэмпл. Для этого использовалась свободно доступная программа ABC Hidden Reference (www.ff123.net/abchr/abchr.html). С ее же помощью проводилось ABX-тестирование в ситуациях, когда наличие разницы между двумя звуковыми фрагментами было спорным.
При проведении теста мы полагались только на собственный слух, как самый точный инструмент определения качества работы психоакустической модели кодеков, не прибегая к сравнению АЧХ или сонограмм, использовавшихся лишь для подготовки иллюстраций.
Результаты оценивались по пятибалльной шкале:
5 баллов — «прозрачный» звук, неотличимый от исходного в ABX-тесте, — предельно возможное качество;
4 балла — звук незначительно (но заметно в ABX-тесте) отличается от оригинала и не вызывает раздражения;
3 балла — проявляются мелкие артефакты, разница становится слегка раздражающей.
2 балла — проявляющиеся артефакты и искажения раздражают;
1 балл — необычайно сильные искажения, делающие прослушивание невозможным.
В некоторых случаях для отражения разницы в качестве использовались дополнительные значения с шагом 0,5.
Файлы проигрывались при помощи референсных (mpglib для MP3, FAAD2 для AAC, WMA decoder для WMA и oggdec для Vorbis) декодеров; постобработка звука не проводилась.
Для тестирования MP3 мы выбрали последнюю стабильную версию свободно доступного кодера LAME. Несмотря на возможность повышения качества кодирования за счет пресетов, мы решили не проводить настройку кодера, а воспользовались параметром -b 128.
ITunes AAC был выбран как один из немногих свободно доступных кодировщиков AAC, а также из-за его высоких результатов в тестах (www.audio.ciara.us/test/aac128test/results.html) AAC-кодеров.
OGG Vorbis версии 1.01 — один из двух участников теста, работающих в VBR-режиме. Параметр -q4 позволил держать средний битрейт кодируемых треков в пределах 128±10% кбит/с.
Из доступных кодеков WMA мы выбрали WMA9, который компания Microsoft продвигает как альтернативу MP3. Параметры VBR-кодирования выбирались так, чтобы средний битрейт тоже находился в пределах 128 кбит/с (мы не случайно остановились на этой цифре, ведь подавляющее большинство новичков кодирует файлы своей фонотеки именно с таким битрейтом).
Тестовый материал
Аудиоматериалом для теста послужил набор из шести 20-секундных сэмплов, представляющих достаточно широкий спектр музыкальных жанров и инструментов. Тестовые фрагменты были получены с оригинальных аудиодисков при помощи точного цифрового копирования без последующей обработки. Сэмплы (см. табл. 2) отобраны из классического набора звуковых фрагментов, применявшихся при тестировании на сайте Hydrogenaudio (rarewares.hydrogenaudio.org/samples/samples.rar).
Одной из особенностей теста является его воспроизводимость. Если вы захотите самостоятельно проверить наши результаты, вы можете сделать это, воспользовавшись приведенными в статье данными.
В большинстве случаев разница между кодированным и исходным фрагментами заключалась в изменении звучания высокочастотных составляющих. Отчасти причиной этому служила достаточно низкая (16 кГц) частота среза, использующаяся многими кодерами (за исключением Vorbis, который пытался кодировать и более высокие частоты) на выбранном диапазоне битрейтов, отчасти — артефакты, нередко проявляющиеся именно на высокочастотных сигналах.
Наверняка у многих читателей возник вопрос: насколько кодированный файл отличался от оригинала? Понять это по столбику цифр-оценок совсем непросто. Специально для любознательных мы сопроводили каждую оценку комментарием относительно изменения качества звука файла после кодирования, так как методика тестирования позволяла неоднократно сравнивать каждый из кодированных фрагментов с оригиналом. Несмотря на то что ухо обычного человека не слишком восприимчиво к искажениям, возникающим в процессе психоакустической компрессии аудиосигнала, прямое сравнение позволяет довольно легко определить разницу. Кроме того, некоторые артефакты оказываются настолько заметными, что обнаружить их не составляет труда. В целом оценки 3,5 и выше означают отсутствие явных огрехов компрессии, а для выявления отличий исходного файла от кодированного, получившего оценку 4,5, требуется достаточно длительный ABX-тест.
Сравнивать цифры — дело неблагодарное. Особенно когда речь идет о таких плохо передаваемых словами вещах, как звук. Тем не менее, результаты тестирования можно оценить, не прибегая к сложной математике:
LAME MP3, как нетрудно было предсказать, плетется в аутсайдерах. Причин тому, по крайней мере, две: использование CBR-кодирования вместо ABR и пренебрежение пресетами (что нередко встречается на практике). На более или менее насыщенных композициях кодек сдавался, будучи неспособным адекватно передать звуковую картину.
WMA9 полностью разочаровал. Даже работая в потенциально более качественном VBR-режиме, он нередко уступал весьма далекому от совершенства MP3, что, учитывая амбиции его создателей, просто неприемлемо. И если огрехи MP3 обычно сводились к неспособности корректно воспроизводить звуки ударных, то «металлические» призвуки и гудение WMA порой вызывали сильное раздражение. Возможно, корень зла кроется в бездарной реализации VBR-алгоритма фирмой Microsoft, однако учитывая, что средний битрейт полученных файлов вписывался в тестовые 128 ±10% кбит/с, а также результаты других независимых тестов, значительное улучшения качества звучания WMA-файлов при переходе на CBR кажется маловероятным.
Качество работы кодеков OGG Vorbis и iTunes AAC оказалось очень близким и почти не уступало качеству оригинала, поэтому однозначно определить лидера среди них сложно. В принципе любой из форматов может быть рекомендован как для использования дома, так и для прослушивания музыки в дороге.
Как трактовать результаты
Во-первых, тест проводился в условиях, в которых может находиться среднестатистический пользователь. Соответственно при использовании более качественных аудиокарты и колонок/наушников возможны небольшие расхождения в результатах тестирования, которые, впрочем, не должны изменить общую картину, ведь большинство возникающих при кодировании артефактов можно расслышать и при использовании low-fi-оборудования.
Во-вторых, никоим образом не следует делать выводы о том, что «формат A — rules, а формат B — sux». Прежде всего, в тестировании принимали участие не форматы, а кодеки. Разные кодеки с разными параметрами кодирования могут дать совершенно разное качество на одном и том же аудиоматериале. Это особенно заметно на MPEG-кодеках AAC и MP3. С другой стороны, кодировщики WMA не предусматривают тонкую настройку в принципе, так что возможностей для получения более высокого качества остается немного.
В-третьих, ни в коем случае нельзя экстраполировать полученные результаты на битрейты выше или ниже 128 кбит/с или другие параметры сжатия. Например, кодек, дающий прекрасный результат на 32 кбит/с, может ужасно звучать при вчетверо большем битрейте.
Можно ли при заданном битрейте получить еще более высокое качество? В большинстве случаев можно — путем тонкой настройки кодека или использования пресетов. Например, качество MP3-файлов, сжатых LAME 3.90.3 с параметрами -b128 и -alt-preset 128, скорее всего будет лучше у последнего. При использовании Vorbis вы можете попробовать один из неофициальных кодеров (например, GT3 или недавно появившийся aoTuV, www.geocities.jp/aoyoume/aotuv ), а для создания AAC-файлов — выбрать другой кодек.
Полезные ссылки
[1] www.hydrogenaudio.org — крупнейший англоязычный форум, посвященный компрессии аудиоданных. Отличается от большинства аналогов более серьезным подходом (среди активных участников форума немало профессионалов). Обязательно прочтите секцию FAQ.
[2] www.rarewares.org — многие из упомянутых кодеков можно найти на этом сайте. Содержит огромное количество бесплатных программ и полезных ссылок на сторонние ресурсы.
[3] www.rjamorim.com/test — страничка Роберто Аморима, администратора rarewares, занимающегося организацией независимых тестов на форуме Hydrogenaudio.
[4] www.foobar2000.org — официальная страничка многофункционального аудиоплейера Foobar 2000, позволяющего эффективно работать с подавляющим большинством форматов компрессии звука.
[5] www.ff123.net — хотя сайт довольно давно не обновлялся, информация, содержащаяся на нем, до сих пор актуальна: прекрасная подборка статей.
[6] www.audiocoding.com — сайт, посвященный различным технологиям кодирования звука, преимущественно AAC. В разделе Wiki подробно описаны многие современные форматы хранения звука.
[7] www.mp3dev.org — домашняя страничка проекта LAME.
[8] www.ca5e.tk — домашняя страничка Case, разработчика плагинов чтения Musepack-файлов для Winamp/Foobar и т. д. Кроме кодировщика и декодера Musepack, здесь можно найти ссылки на ресурсы, посвященные формату, последние версии плейера Foobar и множество другой полезной информации.
[9] www.compaact.com — сайт, посвященный AAC-кодеру Compaact.
[10] www.vorbis.com — официальный сайт OGG Vorbis.
[11] www.sjeng.org — домашняя страничка Garf, создателя кодека Vorbis GT3.
[12] www.real.com/accessories/?prod=xingmp3encoder — страничка, посвященная MP3-кодеру Xing.
[13] www.websound.ru — наиболее серьезный и интересный российский сайт, посвященный работе со звуком. Обязательно просмотрите подборку статей: найти подобный материал в Сети на русском языке непросто.