MP3-аудио и определение его реального качества

http://forum.kinozal.tv/showthread.php?t=39993

Основой музыкальной индустрии на современном этапе ее развития является компакт диск, который по сути представляет набор файлов формата WAV PCM 44100 Гц, 16 бит стерео (от англ. waveform, т.е. "в форме волны"), записанных на диске методом CD-DA (Compact Disc - Digital Audio). Но реалии таковы, что далеко не все любители музыки имеют возможность формировать свою фонотеку из CD-Audio, а качественное звучание любят все. Поэтому большинство из нас коллекционирует музыку в кодированном виде.

Не будем говорить в этой теме о достоинствах и недостатках методов кодирования с потерями (lossy) и без потерь (lossless) и о выборе того или иного кодека для получения максимально качественного звучания. Просто признаем, что формат МР3 (кодек третьего уровня MPEG Layer 3) со времен своей стандартизации в 1991-м году прошел путь от малоизвестной части видео файла до такой степени распространенности, о которой большинство аудио-форматов могут только мечтать. МР3 стал де-факто стандартом хранения музыки во всемирной сети и за ее пределами, успешно используясь во многих аудиоустройствах.

Этот формат при хорошей степени сжатия, доступности декодеров, низких системных требованиях к оборудованию и поддержке всеми современными моделями аудиоплееров, музыкальных центров и DVD-плееров, обеспечивает качество звучание, которое сегодня в определенной степени устраивает большинство любителей музыки. Основа успеха формата MР3 - малый объем файла при высоком качестве звука.Достигаются эти преимущества применением сложных алгоритмов сжатия и системой адаптивного кодирования в ходе которого отбрасывается много "излишней" звуковой информации исходного файла.

  1. Качество МP3

  2. Создание МP3 файла, апконверт и спектральный анализ

  3. Создаем МP3 для экспериментов

  4. Определяем реальный битрейт МP3 файла

  5. Частотный анализ

  6. Выявление апконверта

1. Качество МP3

Формат MР3 является достаточно гибким и позволяет варьировать степень сжатия и качество звучания файла, которые определяются шириной звукового потока - битрейтом (bitrate) - количеством бит выделенных для кодирования секунды звукового потока (kilobits per second - килобит в секунду, обозначается как kbps или кбит/с соответственно). Понятно, что чем битрейт файла выше, тем качество звука лучше. Ведь именно битрейт определяет насколько сильно при кодировании файла в МР3 срезаются верхние частоты (чем выше битрейт, тем граница среза выше).

Само по себе несжатое аудио формата CD-Audio имеет битрейт 1411,2 кбит/с. Значение битрейта для MP3 файла технически может находиться в пределах от минимальных 8 кбит/с до максимальных 320 кбит/с. Наиболее распространенными битрейтами закодированного в МР3 звука являются128, 160, 192, 224, 256 и 320 кбит/с.

Но от значения битрейта напрямую зависит и размер полученного МР3-файла. Например, одна секунда звучания МР3 с битрейтом 320 кбит/с будет "весить" 320 кбит, или 40 кбайт. Таким образом, объем пятиминутной композиции в МР3 320 кбит/с будет равен 5*60*320/8=12000 кбайт, или примерно 11.7 Мбайт. Тогда как объем этой же композиции, но в МР3 128 кбит/с составит 4800 кбайт или около 4.7 Мбайт.

Показатели качества МР3 файлов с различными битрейтами приведены в таблице:

Примечание: Все картинки кликабельны.

Таким образом, пользователь имеет возможность выбора: пожертвовать качеством для достижения минимального объема или получить больший файл с более высоким качеством.

Естественно, что в погоне за качеством звука (учитывая, что объемы жестких дисков сегодня измеряются терабайтами), мы отбираем в свою фонотеку файлы с максимальным битрейтом.

2. Создание МP3 файла, апконверт и спектральный анализ

"Правильные" МР3 файлы с максимальным битрейтом 320 кбит/с можно создать только двумя способами:

1. Путем прямого кодирования CD-DA в МР3 файлы с помощью специальных программ - CD-рипперов;

2. Путем конвертирования любого Lossless формата в МР3.

(Перекодирование качественных файлов других lossy форматов, таких как AAC, OGG или MPC, в MP3 320 кбит/с случай особый и пока не рассматривается).

МР3 с меньшим (чем максимальный) битрейтом можно получить также путем перекодирования МР3 файла с более высоким битрейтом.

Но к сожалению, в теории кодирования звуковых файлов существует и такое понятие, как апконверт. Апконвертом является любое преобразование файла с повышением битрейта. Например, перекодирование MP3 128 кбит/с в 320 кбит/с.

И это явление, как в торговой, так и во всемирной сети встречается сплошь и рядом. Мы увидев на обложке диска или на музыкальном сайте заветные 320 кбит/с, покупаем диск или скачиваем с сайта файлы с любимой музыкой. Но при ее прослушивании нас зачастую постигает разочарование - звук оказывается хуже ожидаемого, на частотах среднего диапазона композиция звучит смазанно, на высоких частотах - приглушенно и ненатурально.... При этом все программы для работы с тегами (такие как МР3 Tag) и все плееры показывают нам битрейт файла 320 кбит/с, хотя оценивая звуковой файл на слух, мы понимаем что это не так...

А все дело в том, что если мы переконвертируем, например, файл МР3 128 кбит/с в МР3 320 кбит/с, то получим файл, напоминающий МР3 320 кбит/с только внешне, а реально это будет тот же МР3 128 кбит/с, но "раздутый" по объему в 2,5 раза. Мало того, что при этом качество не улучшится(ведь потерянные при предыдущем кодировании в 128 кбит/с данные уже не вернуть и звуковой волне с уже "обрезанной" верхушкой просто неоткуда взять недостающие фрагменты), оно даже ухудшится из-за повторного вмешательства программы-кодировщика в исходный "материал".

Как же оценить качество кодирования и определить, соответствует ли содержимое МР3-файла текущему своему виду, т.е. был ли источником кодирования для МР3 320 кбит/сек lossless сигнал (или использовался ли для получения МР3 с меньшим битрейтом исходный файл с более высоким битрейтом)?

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

Поэтому в оценке качества МР3 файла поможет нам спектральный анализ. Его использование позволит наглядно увидеть сигнал, сформированный при кодировании МР3 и сделать кое-какие выводы.

Переходим от теории к практике. Для экспериментов возьмем CD-DA с японским изданием 2012 года альбома группы Scorpions "Comeblack" (RCA - SICP 3373) (Лицензия)

Для начала проверим подлинность компакт-диска в соответствии с рекомендациями в теме "Качество аудио-CD и Lossless аудиофайлов"

Результаты анализа (Скриншот 1), показывают, что диск подлинный CD-DA.

Скриншот 1

А спектрограмма будущего подопытного трека под №8 "Tainted Love" сияет оранжевым цветом практически во всем диапазоне частот от 0 до 22 кГц, как и должно быть на оригинальном диске (Скриншот 2), что дополнительно подтверждается графиком распределения частот.

Скриншот 2

Воспользовавшись рекомендациями приведенными в теме "Как конвертировать аудио-CD в форматы Lossy", с помощью "Easy CD-DA Extractor" копируем, а по сути конвертируем, выбранный нами 8-й трек (больше для опытов нам не понадобится) из формата WAV в формат МР3. Причем делаем это неоднократно, копируя трек в наиболее часто встречающиеся постоянные битрейты (CBR). В результате получаем из одного трека четыре МР3 файла с битрейтами 128, 192, 256 и 320 кбит/с.

4. Определяем реальный битрейт МP3 файла

Для анализа созданных МР3 файлов воспользуемся программой "Adobe Audition 3" (Cкачать программу+лекарство)

Инсталируем и запускаем (Скриншот 3). На вкладке файлы нажимаем кнопку "Импорт файла" [Ctrl+O] (Шаг 1) и в открывшемся окне находим (Шаг 2) и выбираем требуемый файл или (через удержание клавиши "Ctrl"), несколько файлов (Шаг 3). После нажатия кнопки "Открыть" (Шаг 4)программа несколько секунд считывает файл(ы) и открывает его (их).

Скриншот 3

(Скриншот 4) Двойным щелчком выделяем требуемый файл (Шаг 1) и нажимем на кнопку "Экран частоты спектра" [Shift+F] (Шаг 2).

Скриншот 4

Далее детально изучив спектр, с помощью таблицы пиковых частот для МР3 с постоянным битрейтом можно определить реальный битрейт аудиофайла.

Таблица пиковых частот МР3

CBR 096 kbps: 14000 - 15000 Hz;

CBR 112 kbps: 15000 - 15600 Hz;

CBR 128 kbps: 16000 - 16500 Hz;

CBR 160 kbps: 16500 - 17500 Hz;

CBR 192 kbps: 18000 - 18700 Hz;

CBR 224 kbps: 19000 - 19400 Hz;

CBR 256 kbps: 19500 - 19700 Hz;

CBR 320 kbps: 20000 - 21000 Hz.

Примечание: Приведенные данные в каждом конкретном случае могут немного отличаться в ту или иную сторону в зависимости от версии кодера, параметров кодирования (есть даже настройка, меняющая значение предельной частоты) и даже самого материала.

Вот какие результаты выдал анализатор спектра в "Adobe Audition" (Скриншот 5) для подопытных треков (для наглядности и удобства восприятия на картинке приведены только фрагменты спектрограмм треков с различными битрейтами):

Скриншот 5

Очевидно, что граница среза частот для каждого трека находится в пределах указанных в таблице пиковых частот. Поэтому можно сделать вывод, что конвертирование выбранного трека в МР3 сделано правильно и реальные битрейты аудиофайлов соответствуют заданным.

5. Частотный анализ

Как показывает практика, не всегда спектр МР3 файла бывает таким четким и однозначным. Зачастую он имеет расплывчатую границу, изобилующую прерываниями и провалами. В этом случае для определения границы среза частот в "Adobe Audition" необходимо воспользоваться инструментом "частотный анализ" (Скриншот 6). Для вызова окна частотной диаграммы в основном меню нажимем кнопку "Окно" (Шаг 1) и из выпадающего списка выбираем пункт "Частотный анализ" [Alt+Z] (Шаг 2). Затем с помощью мыши выделяем исследуемую часть спектра (Shift+Left-Right) (Шаг 3) и нажимаем в окне частотного анализа кнопку "Сканер выборки" (Шаг 4).

Скриншот 6

После сканирования спектра "Adobe Audition" выдаст результат в виде линейного графика спектра, на котором граница среза частот видна более четко, чем на спектрограмме. При этом, чем больше выделенный участок спектра, тем больше длительность сканирования программой, но и достоверность информации о реальном битрейте МР3 файла повышается. Поэтому, в особо трудных случаях рекомендуется для сканирования выделять весь спектр целиком.

6. Выявление апконверта

А теперь проведем эксперимент: с помощью "Easy CD-DA Extractor" переконвертируем файл МР3 128 кбит/с в МР3 320 кбит/с, т.е. сделаемапконверт.

Далее откроем файлы - МР3 128 кбит/с (наш источник для апконверта) , мнимый МР3 320 кбит/с (полученный путем апконверта трека с битрейтом 128 кбит/с в МР3 320 кбит/с) и настоящий МР3 320 кбит/с - в программе "МР3 Tag и сделаем инфо-файл (Скриншот 7).

Скриншот 7

Как видим, "МР3 Tag" восприняла и настоящий, и мнимый треки МР3 320 кбит/с одинаково и выдала по ним идентичные результаты. Т.е., файл после апконверта увеличился в объеме в 2,5 раза и удачно замаскировался под МР3 320 кбит/с, но звучать от этого качественнее не стал.

Теперь проверим, как справится с задачей обнаружения фальшивки "Adobe Audition". Загружаем все три файла и производим для каждого трека ""частотный анализ" (Скриншот 8). Результаты показаны на рисунке.

Скриншот 8

"Adobe Audition" с помощью "частотного анализа" безошибочно определила реальный битрейт каждого трека. Мнимому МР3 320кбит/с, полученному путем апконверта, обмануть программу не удалось.

Делались неоднократные попытки обмануть эту программу различными способами, в том числе и путем конвертирования МР3 128 кбит/с в lossless форматы с последующим кодированием поддельных FLAC и WAV файлов в МР3 320 кбит/с. Но "Adobe Audition" во всех случаях безошибочно определила реальный битрейт полученных треков как 128 кбит/с.