Все, что вы хотели знать про МР3, но боялись спросить
Если сложить все плюсы и минусы стандарта МР3, то минусов оказывается больше, чем плюсов. Минусы оказываются весомее, а плюсы выглядят просто как следствие высокой популярности формата и отсутствия серьезных конкурентов. Давайте попробуем выяснить причины такой распространенности стандарта МР3. Как оказалось, ни один из существующих стандартов сжатия потока аудио, кроме МР3, не способен гарантировать сохранность качества на высоких битрейтах. Тем более что на низких битрейтах МР3 уверенно вырывается вперед среди конкурентов, которые не могут закодировать сигнал хотя бы близко к оригиналу на таких битрейтах. Второй плюс, скорее всего, является следствием первого. Под МР3 разработана целая куча программного обеспечения. Будь это кодеры или проигрыватели. Появились даже аппаратные МР3-плееры. А МР3 стал основой кодирования звука в стандартах MPEG1 и MPEG2. Как видно, преимущество МР3 заключается лишь в отсутствии конкурентов. А чтобы выявить минусы данного формата, нужно рассмотреть МР3 более детально.
Что такое МР3
Само слово МР3 - это сокращение MPEG Layer3. МР3 разработан фирмами Fraunhofer IIS и THOMSON. Точнее, первая фирма - это не совсем фирма. Это институт Фраунгофера. МР3 является потоковым стандартом сжатия аудио. Это значит, что исходный сигнал разбивается на отдельные одинаковые куски - фреймы, которые кодируются отдельно. Наверняка, вы хорошо себе представляете, для чего нужен битрейт. Понятно, что 256 kbps лучше, чем 128 kbps, а 320 kbps - это почти CD-качество. Kbps, говоря по-русски, это количество килобит (не килобайт!), из которых состоит одна секунда звука. Причем, это общая величина потока. Она не зависит от количества каналов, на которых записан звук. То есть и 5.1, и стерео в 128 kbps будет занимать одинаковое количество места на диске. Понятно, что качество стерео в данном случае будет существенно выше, чем 5.1. Ведь при стереозвучании на канал будет приходиться примерно 64 kbps, а в 5.1 - 21 kbps с копейками. Более подробно о распределении потока между каналами будет рассмотрено ниже. А теперь о самом процессе кодирования.
Процесс кодирования
Сам процесс кодирования можно разбить на четыре основных этапа:
Подготовка к кодированию. - На данном этапе исходный сигнал разбивается на равные участки, называемые фреймами. Дальнейшая работа, вплоть до воспроизведения сигнала, осуществляется над каждым фреймом отдельно. Причем фреймы могут даже кодироваться с различными параметрами внутри одного файла. Для этого каждый фрейм содержит в себе заголовок со своим описанием. Поэтому последняя спецификация МР - MPEG Layer3 - наиболее требовательна к ресурсам.
Первый этап кодирования. - Как известно из курса математики, любая (ну почти любая) сложная функция может быть представлена в виде суммы простых функций (или почти так). Так вот, звук - это всего лишь сумма отдельных частот (то есть, простых функций). Это дает возможность разбить звуковой сигнал по частотным диапазонам (как в многополосной акустике, где каждый динамик воспроизводит определенный диапазон частот).
Построение и обработка психоакустической модели. - Здесь работа происходит над выделенными в предыдущем этапе диапазонами. Для каждого диапазона определяется величина маскирующего эффекта, создаваемого сигналами соседних диапазонов и сигналом предыдущего фрейма. Если величина сигнала в диапазоне оказывается ниже порога слышимости, то сигнал не кодируется, а просто отбрасывается. Естественно, порог слышимости у разных людей разный. Также качество акустики стоит не на последнем месте. Если на пластиковых пищалках можно не услышать разницы и между 128 kbps и 256 kbps, то на советских доработанных "Корветах" или "Радиотехнике S90" первых годов выпуска, можно отчетливо услышать разницу между 320 kbps и CD.
Кодирование. - На последнем этапе, формируется сам поток, который кодируется методом Хаффмана.
Вот так и осуществляется кодирование МР3. Но на самом деле все происходит несколько сложнее. Здесь, например, не рассматривается разница при кодировании различными битрейтами. Также имеется несколько различных способов кодирования стерео сигнала, влияющих на процесс кодирования кардинально.
Способы кодирования стерео
Dual Channel - самый простой способ кодирования стерео сигнала. Каждому каналу отдается ровно половина потока. Например, если выбран битрейт 128 kbps, то каждому каналу будет отдано по 64 kbps. И кодируются каналы полностью независимо. Такой способ может потребоваться, если в каналах сигналы абсолютно разные.
Stereo - при использовании данного способа кодирования каждый канал кодируется отдельно, так же как и в предыдущем способе. Единственное отличие заключается в том, что размеры потоков являются величиной динамической. Кодер в процессе сжатия определяет, какому каналу отдать приоритет на каждом конкретном участке записи. Это, например, позволяет избежать кодирования тишины в одном из каналов. В это время другой канал кодируется качественней. Обычно такой вид кодирования позволяет получить более качественный звук.
Joint Stereo (MS Stereo) - в данном случае сигнал раскладывается на средний между каналами и разностный. Далее один из каналов кодируется очень качественно, а другой - очень некачественно :). Если каналы практически совпадают, то можно получить очень хорошее качество сигнала. Другое дело, что закодировать записи, например, любой уважающей себя группы The Beatles, Mеtallica, Roxette, скорее всего не получится. Там каналы имеют очень большое различие, вплоть до полного несоответствия. Но иногда и Мадонну не получится закодировать таким образом, несмотря на полное совпадение каналов. Дело в том, что у старых записей часто не совпадают фазы каналов. И ничего с этим сделать нельзя.
Joint Stereo (MS/IS Stereo) - этот метод может применяться для низких битрейтов. Здесь кодируется только средний сигнал между каналами (фактически становится моно). Сохраняется только разность в мощности сигнала между каналами. Естественно, такая потеря качества на высоких битрейтах неприемлема. Но на низких битрейтах данная методика позволяет получить достаточно качественный сигнал.
Каждый из перечисленных способов обладает своими преимуществами и недостатками. Причем, каждый из них приспособлен под каждый конкретный случай. И полученное качество будет целиком зависеть от правильно принятого решения.
128 kbps vs. 256 kbps. Характер потерь
Прежде чем приступить непосредственно к сравнительному анализу разных битрейтов, необходимо разобраться с характером потерь, которые неизбежно возникают в процессе кодирования. Давайте будем исходить из того, что метод сжатия стерео композиций (описанные выше) выбран правильно и не портит общую картину.
Как мы уже знаем, исходный сигнал разбивается по частотным диапазонам. И если мощность сигнала в каком-либо диапазоне меньше слухового порога, то он не кодируется. Но такое справедливо только для высоких битрейтов. На практике все значительно хуже. Сначала кодируются диапазоны с наиболее мощным сигналом. И не всегда получается закодировать все диапазоны из-за жестких требований к размеру получаемого файла (если, например, кодирование происходит с битрейтом 128 kbps, то на каждую секунду будет использоваться именно 128 килобит). Таким образом, пропадают мелкие подробности звучания. Говорят, что звук теряет свою кристальную чистоту. Естественно, владельцев дорогой зарубежной, переделанной советской (те же S90) или самодельной акустики такое положение вещей не может устроить. А вот на всяких мультимедийных колоночках такие потери, зачастую, остаются незамеченными в силу качества такой акустики. В последнем случае кодирование на низких битрейтах будет оправданным ввиду малого размера получаемого файла.
Другой недостаток МР3 - явное неуважение к высоким частотам выше 16000 Гц. Кодируется диапазон 16000-20000 Гц с низшим приоритетом. Мало того, что данные частоты не всегда "умещаются" в итоговый файл, так и искажения, вносимые при кодировании, всегда существенны. Иногда это проявляется в появлении звона, иногда в характерной шепелявости. Но владельцев "дешевых пластиковых погремушек" это опять не касается. Они эти недостатки просто не услышат. Редкая однополосная акустика может воспроизвести частоты выше 12 КГц. Так вот, чтобы проверить, может ли конкретный экземпляр воспроизводить высокие частоты, нужно всего лишь убедиться в наличии высокочастотного динамика - в простонародье "пищалки". Все очень просто - есть пищалка, есть и высокие частоты.
CD-качество
В народе пошло утверждение, что при кодировании 128 kbps качество получаемого файла ничуть не уступает оригиналу. Разбить данный миф очень просто. Просто представьте, какой образ возникает у вас при словосочетании "компьютерные колонки". Могу поспорить, что вы себе представили маленькие кремовые мыльницы по бокам монитора. Именно такие и стоят у большинства пользователей. Естественно, это большинство и не слышит разницы между CD и 128 kbps МР3. А нет разницы, значит, то же самое. Значит, 128 kbps - CD-качество. Но в последнее время наблюдается существенный прорыв в области звука. Потихоньку все переползают с пластиковых пикалок на деревянные "Свены" и "Микролабы" весьма посредственного качества. Но это хорошо, если прогресс таким образом пойдет. А ведь теперь в моде новый формат - 5.1. И все стремятся этот 5.1 заиметь. И неважно, что теперь вместо двух пищалок стоит пять. Ну еще к 5.1 сабвуфер нужен. Ну и ставят пластиковые гробы системы Band-Pass (тип корпуса сабвуфера, когда сам динамик находится внутри, а звук выходит через фазоинвертор). Ладно, оставим эту тему. Просто 128 kbps - это совсем не CD-качество!
Официально, CD-качество - 320 kbps. Именно с таким битрейтом нужно кодировать, чтобы предотвратить потерю качества. Это практически не возможно ни подтвердить, ни опровергнуть. Скорее всего, если использовать профессиональную звуковую карту и акустику класса Hi-End, то, возможно, разница будет заметна. Ведь сам стандарт МР3 подразумевает потери. Даже если информация на всех диапазонах "поместится" в файле, но ведь будут диапазоны, мощность сигнала в которых лежит ниже порога слышимости (естественно, такие диапазоны в любом случае не кодируются). Но как знать, что 100% акустики не воспроизведет данные участки сигнала и 100% людей не в состоянии их услышать. А частоты выше 16 кГц срезаются некоторыми кодерами по умолчанию.
128 kbps
Пожалуй, единственным достоинством данного битрейта является малый размер получаемого файла при достаточно хорошем качестве звучания. На современном этапе развития Интернета 128 kbps является оптимальным решением с точки зрения отношения скорости скачивания к качеству. Нужно заметить, что наибольший интерес среди пользователей вызывает поп-музыка. Именно на нее приходится львиная доля скачиваемых МР3-файлов. А основное свойство популярности такой музыки - недолговечность. Поэтому и не предъявляется высоких требований к качеству таких композиций. И 128 kbps является в таком случае вполне оправданным выбором.
При кодировании 128 kbps мы теряем большинство пространственных стереоэффектов. То есть, нельзя сказать, что пространственные эффекты исчезли. Они остались. Но если раньше эти эффекты воспринимались подсознательно, то теперь тонкая структура стереофонического звучания размылась. Таким образом, стереоэффекты стали восприниматься, как посторонний шум. Возможно, от этого и пошло мнение, что кодирование на малых битрейтах вносит шумы.
А происходит "размывание" звука по следующей причине. Чтобы придать инструменту смещенное положение относительно центра, сигнал одного канала немного запаздывает относительно другого на некоторое время. Время выбирается ровно такое, чтобы человек точно воспринял направление звука (чтобы определить направление звука, соответствующий отдел головного мозга сравнивает время запаздывания поступления звукового сигнала в одно ухо относительно другого; этот эффект и используется для стереофонической картины). Этому способствует относительно небольшая скорость распространения звука - 330 м/с. А при кодировании 128 kbps это запаздывание записывается в один моноканал. И при воспроизведении стереокартина не может быть воспроизведена из-за того, что запаздывание происходит не между разными источниками звука (колонками), а сигналы происходят из одного источника. Поэтому мозг не может нарисовать пространственную картину, а воспринимает только то, что звук размыт.
Это касалось средних и высоких частот. Они (в особенности - ВЧ) обладают достаточно узкой направленностью. А вот низкие частоты ниже 200 Гц не позиционируются. Мозг не может определить, откуда они происходят из-за многочисленных отражений от стен и достаточно больших длин волн (порядка нескольких метров) на данном диапазоне. Поэтому басы одинаково хорошо слышатся в любом месте помещения. Кстати, именно на этом эффекте и обосновано применение сабвуферов. Человек все равно не сможет определить (если не будет прислушиваться специально), исходит ли звук из колонок, или откуда-нибудь еще. А вот МР3 с битрейтом 128 kbps творит чудеса, нарушая все законы физики. При кодировании таким качеством басы как бы "разбегаются" по колонкам.
Следующий недостаток является следствием низкого битрейта. Если на незагруженных участках качество 128 kbps вполне приемлемое, то бывают моменты, когда звуковая картина переполнена звуками в различных частотных диапазонах. Места для записи всех не хватает, и итоговое звучание получается очень невнятным и неразборчивым. Это очень сильно режет слух. Но все же 128 kbps иногда дает вполне приемлемое качество.
Хорошо сжимаются (под словом "хорошо" понимается качество получаемого файла) звуковые отрезки следующих типов:
- Сольные инструменты с простым "ненагруженным" звуком. Например, фортепиано или гитара. А вот такие инструменты, как орган или некоторые духовые, будут обладать несколько "ужатым", "синтезаторным" звучанием при сжатии в 128 kbps. Неплохо зазвучит голос в аккомпанементе с простым инструментом.
- Почти вся современная попса, "гениальные" продюсеры не знают никаких стереоэффектов, кроме реверберации, только знают, что голос можно так переделывать, что узнать нельзя. Естественно, что размываться там нечему.
- Все остальное, что не требовательно к качеству.
А вот то, что сжимать в МР3 128 kbps не рекомендуется.
- Запись с наличием посторонних шумов. Например, запись выступления в баре или ночном клубе. Здесь шумы занимают очень большой диапазон частот. В результате кодирования получится "каша".
- Записи с большим количеством стереоэффектов. Причины описаны выше.
- Запись, "перегруженная" многими инструментами в различных частотных диапазонах. Например, большой симфонический оркестр или серьезная группа с хорошим продюсером.
- Любая требовательная к качеству запись.
Очень многое зависит и от требовательности самого человека. Есть такие, кого просто выворачивает наизнанку при одном упоминании МР3 128 kbps. А есть и те, кто разницу между оригиналом и 128 kbps не заметит. Поэтому нет требовательности к качеству - сжимайте 128 kbps. Есть - забудьте слово 128 kbps.
256 kbps
Теперь давайте перейдем к чему-нибудь более качественному. А именно - 256 kbps.
На сегодняшний день, пожалуй, единственным способом сжать запись с большим коэффициентом сжатия и при этом избежать существенной потери качества является сжатие в МР3 256 kbps. Сжатие с таким битрейтом позволяет получать файлы примерно в десять раз меньше, чем оригинал. Естественно, потери качества существуют и в 256 kbps, но их услышат только ценители настоящего Hi-Fi.
Но и у 256 kbps недостатки все-таки есть.
- Итоговый сигнал получается несколько размазанным во времени по сравнению с оригиналом. Это касается резких и быстрых звуков, таких как удар о металлический предмет. Еще для 256 kbps (как и для любого другого битрейта) характерна слабая, не совсем точная передача моментов, перегруженных мощными звуками. На данный момент алгоритм коррекции такой: в потоке данных mp3 имеется буфер, который позволяет экономить некоторую часть потока, чтобы в нужный момент воспользоваться накопленным резервом и затратить гораздо больше данных на кодирование узкого участка. К сожалению, буфер этот невелик, а дальнейшее развитие этой идеи - переменный поток - VBR - пока не имеет разумной и качественной реализации.
- Размер файла получается в два раза больше, чем 128 kbps.
- МР3 128 kbps. используется в 99% в сети Интернет, а при современных скоростях и ценах на него это является существенным сдерживающим фактором популярности данного битрейта.
Но в последнее время наблюдается существенный скачок в развитии как компьютерной акустики, так и Интернета. Еще хочется отметить существенное падение цен на Интернет. Теперь ситуация больше напоминает конкурентную борьбу между провайдерами, нежели монополистическую. Но последнее обстоятельство не может никак повлиять на ситуацию. Многие пользуются глобальной сетью на работе по выделенной линии за счет фирмы. Казалось бы, все обстоятельства располагают к переходу на 256 kbps. Но этого не происходит и не может произойти в ближайшее время. Дело в том, что на Западе вышеперечисленные изменения произошли несколько раньше. А там никакого перехода на 256 kbps не намечается. Соответственно, у Нас переход не может наступить раньше, чем у Них.