Современные методы позиционирования и сжатия звукаРефераты >> Программирование и компьютеры >> Современные методы позиционирования и сжатия звука
Вернемся к кодированию CD Audio.
Выбирать основной для себя битрейт вам самим, в зависимости от потребностей. Я сам, когда начинал разбираться с MP3, изначально искал именно и только полноценную замену CD Audio, с меньшим объемом, но с как минимум не меньшим качеством, и такую возможность MP3 в общем-то дает.
Дело в том, что в уже упоминавшихся тестах с участием профессиональных прослушивателей, в которых для всех использованных тестовых композиций не было найдено различий в звучании MP3 256kbs и оригинала, было на самом деле использовано весьма ограниченное число композиций. На практике же существует довольно много композиций, где приходится переходить на 320kbs, и в то же время я не слышал ни об одной, где результат кодирования на 320kbs оказался бы недостаточно хорош. Отличия, конечно, все же остаются обнаружимы при использовании исключительной аппаратуры, но в целом качество практически то же.
В общем же из результатов всех известных мне тестов можно сделать следующие выводы. Во-первых, битрейт 256kbs для абсолютного большинства пользователей совершенно достаточен.
И, наконец, немного о собственно MP3 128kbs, пользующемся такой популярностью. В свое время он был широко разрекламирован FhG IIS, но при его использовании мы имеем скорее качество аудиокассеты, записанной на подозрительного происхождения магнитофоне, хотя и с очень низким уровнем шумов. Романтически настроенные разработчики даже почти официально назвали это 'CD-качеством', что очень далеко от истины. Впрочем, это давняя традиция -- ADPCM тоже в свое время называли форматом, дающим только неслышимые искажения.
На самом деле различие между качеством звука на битрейтах 128kbs и 256kbs . 320kbs принципиально, так как первый к качеству уровня CD, собственно, никакого отношения не имеет, в отличие от двух последних. Разумеется, для тех, кому качество средней аудиокассеты кажется великолепным, данная оценка неверна, также она не столь категорична для случаев, когда внимание сильно отвлечено. Но в целом, думаю, все ясно.
VBR & XingTech
XingTech -- фирма, производящая наиболее скоростные MP3 кодеры. К сожалению, ее кодеры всегда славились и продолжают славиться невысоким качеством.
В районе конца 98 -- начала 99 года XingTech первая использовала технологию переменного битрейта, VBR. Если в случае постоянного битрейта кодер выбирает наиболее значащие частотные составляющие фрейма, убирающиеся в выделенный битрейт, то в случае VBR задается максимальный допустимый уровень потерь, а кодер выбирает еще и минимальный битрейт, достаточный для выполнения поставленной задачи. Стоящие рядом в конечном потоке фреймы могут оказаться в итоге закодированы с совершенно разными параметрами.
Но для кодеров XingTech качество так и не поднялось на уровень FhG IIS/ISO-based кодеров. Оно безусловно повысилось, но для серьезного кодирования музыки эти кодеры остаются непригодны, да и не для этого они создавались -- в частности, в данных кодерах практикуется искажение сигнала, дающее эффект "лучшей слышимости высоких", что действительно часто может оказаться приятно, но высококачественное кодирование по определению подразумевает отсутствие подобных искажений. И не зря.
Определенный оптимизм вызывает другая реализация VBR, уже на основе исходного кода ISO ( на самом деле от кода ISO он ушел уже очень далеко ). Речь идет о кодере Lame. Несмотря на свое довольно своеобразное название, данный кодер на данный момент является самым многообещающим кодером для высоких и средних битрейтов, при этом он и на низких битрейтах превосходит большинство других кодеров, в том числе все ISO based. Подробнее о Lame -- ниже.
Способы хранения MP3
Стандарт MP3 не определяет никакого точного стандартного математического алгоритма кодирования, его разработка целиком и полностью остается на совести разработчиков кодеров. Вместо этого он определяет общую схему процесса кодирования, а также формат закодированного фрейма. Сами последовательности фреймов могут передаваться потоком (процесс передачи такого потока называется streaming) или храниться в файлах.
MP3 файл, как и поток, состоит из последовательно расположеных фреймов, между которыми может содержаться произвольная информация. Основное требование состоит в том, что не должно быть совпадений с сигнатурой начала фрейма.
Часто к последовательности фреймов добавляют стандартный заголовок мета-аудиоформата WAV, и получается то, что называют WAV-MP3. (Немного подробнее о последнем будет сказано ниже, когда будет описываться ACM pro codec.) Еще чаще к MP3-файлу добавляется информационный блок ID3v2, содержащий информацию об исполнителе, жанре, названии композиции, и другую подобную информацию о треке. Он добавляется в конец файла. В середину пока никто ничего ставить не придумал. Хотя, вообще говоря, может представлять некоторый интерес вставка спецтэга для VBR с информацией о том, в какой части трека мы, собственно, находимся.
Характер потерь при кодировании
На низких битрейтах всегда срезаются мелкие, сравнительно тихие детали, наличие или отсутствие которых нередко серьезно меняет эмоциональную окраску композиции, придает или лишает ее таких эффектов, как ощущение 'кристальной' чистоты звука (в той мере, в которой она присутствует в CD Audio). Кроме того, в соответствии с психоакустической моделью, высшие (выше 16 кГц) частоты на низких битрейтах кодируются с очень низким приоритетом.
Далее, имеют место разные особенности кодеров. Так, у кодеров от FhG IIS на 128 kbs оказываются 'смазаны' верхние частоты, наблюдается эффект 'шепелявости', в то время как у ISO-based вместо этого -- 'звон'. Скорее всего, это связано с разным отношением к частотам выше 16kHz у данных кодеров. В кодере Lame, кстати, они по умолчанию срезаются, что увеличивает качество кодирования на 128kbs.
На высших битрейтах при последовательном следовании психоакустической модели, разработанной FhG IIS, проблемы могут доставлять только ошибки, внесенные при написании кодера. Впрочем, из-за не слишком большой озабоченности FhG IIS качеством его кодеров на высоких битрейтах уже не раз оказывалось, что новая версия звучит иногда даже несколько хуже старой. Полагаю, причина кроется в недостаточном или неправильном ослаблении ограничений психоакустической модели при повышении битрейта. Опять же, первый серьезный заказчик, и проблема исчезнет.
Тестирование качественности кодеров
Обычно тестирование кодеров проводится по степени сохранения формы АЧХ оригинального сигнала. При этом очевидно, что при битрейтах 256kbs . 320kbs АЧХ исходного файла и файла, полученного после декодирования, должны быть идентичными как на синтетических тестах (сгенерированный белый шум), так и на реальных треках, так как при значительных отличиях они окажутся слышны независимо от того, что говорит психоакустическая модель про каждый конкретный фрейм, если только все эти фреймы не похожи друг на друга. На более низких битрейтах следует в первую очередь следить за сохранением формы АЧХ в области низких и средних частот.