Ошибка

Как распознать диск Audio CD, записанный из mp3 файлов. Тест на качество различных битрейтов.

Тема закрыта
 
Автор Сообщение

Попрыгун

Пол: Пол:Муж

Стаж: 15 лет

Сообщений: 608

Рейтинг

post 29-Дек-2009 02:18 [-]0[+]

[Цитировать] 

Введение
Не секрет, что сейчас вся Сеть наводнена mp3 и ему подобными извращениями (в дальнейшем, я буду называть lossy-форматы словом фарш). Естественно, что возникает великое искушение для пиратства --- накачать фарша, потом сделать из него AudioCD и продавать по соответствующим ценам. Далее, несчастный потребитель покупает этот CD, думая, что имеет на нём точную копию, но увы --- это всего лишь декодированный в WAV фарш, а, следовательно, о сохранении оригинального спектра можно забыть.

Данная статья посвящена тому, как можно попытаться отличить подделку от нормального CD-DA-релиза. Итак, приступим.

О mpeg-сжатии звука
Для начала немножко теории и математики (если Вы не профессионал, а просто хотите пользоваться готовым рецептом, который работает, этот абзац можете смело пропустить). Грубо говоря, первое, что происходит при кодировании в фарш --- так это разложение сигнала по гармоникам (для mp3 это обычное преобразование Фурье, но могут использоваться и другие базисы). Тем самым звуковой волне cопоставляется набор коэффициентов Фурье, которые, как мы знаем, стремятся к нулю. Идея проста: давайте возьмём и часть коэффициентов выкинем (от этого мало что изменится, тем более, что высокие частоты человеческое ухо слышит обычно хуже). Это и есть главное место, где теряется информация (само преобразование Фурье как таковое --- это изоморфизм и потому обратимо). После этого коэффициенты округляются и сжимаются другими алгоритмами (при этом уже потерь данных не происходит). При декодировании проводится обратное преобразование Фурье, и перед нами предстаёт почти что исходная волна (правда, со срезанными высокочастотными гармониками). То, на сколько сильно рубят верхние частоты, определяет битрейт (чем выше битрейт, тем, как правило, граница обрубания выше).
Какие битрейты были заготовлены для теста:

А теперь попробуем узнать, что происходит со спектром, т.е. с частотами, если звук из нормального состояния перекодировать в формат mp3. Узнав какой спектр соответствует какому битрейту, мы даже сможем узнать какой примерно битрейт использовался в данном аудиодиске/треке? Я думаю догадаться не сложно что для этого нужно.… Догадались?
Я взял оригинальный Audio CD и скопировал один и тот же трек в формат mp3 разных битрейтов. Также для наглядности была сделана копия в несжатом формате – wav. После чего, все скопированные треки были записаны на диск и проверены программой Tau Analyzer. По подробнее.
Копировались треки в наиболее часто встречающиеся постоянные битрейты (CBR): 96, 112, 128, 160, 192, 224, 256, 320 kb/s; переменные битрейты 3 уровней качества: VBRLQ (low quality. среднее значение 131 kb/s), VBRMQ (mediumquality. среднее значение 177 kb/s), VBRHQ (high quality. среднее значение 287 kb/s).
При копировании было установлено максимально качественное качество кодирования.
Для всех VBR: минимальный уровень 32 kb/s, максимальный - 320 kb/s.
Конкретно для каждого VBR уровень качества в соответствии с 10 бальной шкалой (применяется в WinAmp и др. программах): VBR HQ – 0,VBR MQ – 5, VBR LQ – 9.
Скопировав и запустив программу для записи CD (использовал Nero Burning ROM 6.3.1.6), выбираем запись Audio дисков. Добавляем все треки в mp3 формате, также не забываем про нашу wav версию. Пишем. После записи включаем Tau Analyzer и начинаем проверку.

Результаты сканирования:

Результаты показали то, что и следовало ожидать, даже больше. Все заведомо сжатые треки программа распознала, т.е. справилась со своей прямой задачей.
Спектрограммы и Амплитудно-Частотные Характеристики (которые также поставляются с этим описанием в графических форматах .jpg) показали следующее (здесь приведены урезанные изображения, а именно - спектрограмма только одного канала. Справа – шкала в kHz):
CBR 96 kb/s - Подходит только в качестве ознакомительного материала, с последующим получением (скачиванием или приобретением) более качественного звука. Звук жестко срезается на 11,2 kHz:
CBR 112 kb/s – Что-то среднее между 96 и 128 kb/s. Встречается очень редко (поэтому и был включен в тест) - в основном это старые mp3, кодировавшиеся еще в конце 90-х. Звук жестко срезается на 12,5 kHz:
CBR 128 kb/s – Помните такие слова: "mp3 с битрейтом в 128 kb/s теоретически соответствует CD качеству"? Может теоретически и так, но практически… Звук жестко срезается на 14,0 kHz:
CBR 160 kb/s – Уже более-менее терпимо. Этот битрейт, в общем-то, может занять место в вашей коллекции, хотя все равно он не является качественным. Его часто используют для записи радиомиксов ди-джеев, где большего и не надо. Звук срезается на 16,5 kHz, из которых 0,5 kHz занимает легкий "пушок":
CBR 192 kb/s - Качество нормальное. Видно, что он как бы состоит из битрейта 160 (в роли основания), и некоторого не густого слоя «добавки». Такой битрейт считается оптимальным по соотношению качество / размер. Также является самым подходящим для кодирования записей с виниловых пластинок, которые не способны воспроизводить (точнее на которые, в силу законов физики, нельзя записать) звук выше 20 kHz. Соответственно все что вы увидите в такой записи выше – это шумы и трески. Если это ненужный материал, то зачем же его держать? Звук "заканчивается" на 18,5 kHz:
CBR 224 kb/s - Качество хорошее. Данный битрейт не так распространен, как 192 или 256, он является промежуточным.

Звук "заканчивается" на 19,4 kHz:
CBR 256 kb/s - Качество отличное. Многие меломаны стремятся копировать Audio CD диск именно с таким битрейтом.

Звук "заканчивается" на 20,0 kHz:
CBR 320 kb/s - Качество максимальное для формата mp3. Бытует мнение о том, что его использовать нет смысла, ибо разницу на слух между 256 и 320 заметить невозможно. Скорее всего, из-за того, что домашняя аудиосистема среднего класса воспроизводит частоты 40 Hz – 20kHz. По спектрограмме очень похож на оригинальный звук (формата wav), однако, визуально различия можно заметить. Звук "заканчивается" на 21,5 kHz:
VBR LQ (131) - Качество плохое. По спектрограмме похож на 96, только файл mp3 будет занимать объем на 1/4 больше. Такое вас устраивает?

Звук жестко срезается на 11,2 kHz:
VBR MQ (177) - Качество терпимое. Наверное, по спектрограмме был бы похож на 144 kb/s (не исследовался, но в природе встречается крайне редко).

Звук срезается на 15,3 kHz:
VBR HQ (287) - Качество хорошее. По спектрограмме похож на 224, но в отличие от него, тут идет упор на то, чтобы сохранить высокие частоты, взамен слегка подрезав низкие (что это такое, и почему так делается, вы найдете в других статьях, задача которых будет рассказать, что такое пресеты кодека lame, принцип действия и для чего они нужны). Отчетливо виден срез верхних частот, да и объем mp3 файла будет на 1/4 больше.

Звук "заканчивается" на 19,5 kHz:
WAV (он же оригинал) - Качество оригинальное, т.е. без сжатия. Спектрограмма без каких либо обрывов:
Все спектрограммы битрейтов в одном изображении (использован один и тот же фрагмент трека):


Теперь соберем результаты в таблицу:
"...Гадость-то какая", --- скажете Вы. И будете правы.

Ну и что же с этим делать?
Так вот, умный народ думал-думал, и решил, что так жить нельзя, и надо избавить себя от пиратских CD, или по крайней мере, оградить себя от их прослушивания. Ну или если не полностью оградить, то хотя бы попытаться. Вот как это делается. Как говорится, возможно два случая...

а) Допустим, что у Вас на руках имеется свежекупленный диск, и Вы хотите его проверить. Скачиваем с сайта http://true-audio.com (свободную) программу, которая называется Tau Analyzer. Занимает немного, да и в использовании незатейлива.
Заряжаем диск в привод, давим кнопку с плюсиком (Read CD). Появляется список треков. Проверяем, что параметр mode выставлен в 1/1.
Далее жмем на Analyze CD и наблюдаем за работой программы, в итоге мы получим вот это:
Как видно, все треки CDDA. Так же можно открыть вкладку spectrum, там будет представлена спектрограмма по трекам, там так же (правда на глаз) можно определить качество звуковой дорожки. Откроем для третей дорожки спектрограмму:
Как видно, провалов на 12,14,15,16,18,19 khz нету. Это так же означает что звуковая дорожка отличного качества.
Теперь вставим в привод диск с конвертированными звуками дорожками, и по новой запустим тест:
Видно, что звуковые дорожки под номерами 3,6,9,13 поменяли статус на MPEG, значит, что звуковая дорожка была восстановлена из mp3. Так же теперь перейдем на вкладку spectrum и посмотрим ее для третьего трека:
Думаю сразу в глаза бросается обрезка 18 khz. Это как раз и означает, данный диск возможно кустарного производства.
Как видите, всё очень просто. Однако, не забудьте прочесть текст до конца!

б) Допустим, что Вы только что слили из Вашей любимой файлообменной сети какой-то диск, и у Вас уже чешутся уши, чтобы его послушать. Однако не стОит так торопиться... быть может, это фарш... Как правило, диск имеется либо в виде APE (FLAC), либо ещё в каком-то виде, типа .nrg-образа (я очень не люблю последний тип релизов, потому что нет никакой гарантии, что рип был сделан точно, но об этом --- в моей будущей статье "Зачем нужны ЛОГи аудио-релизов"). В первом случае всё очень просто. Надо декодировать диск в формат WAV любым удобным способом (я лично предпочитаю консольные версии MAC или FLAC Encoder/Decoder), затем с того же сайта http://true-audio.com добыть программу auCDtect. Это маленькая консольная утилита, которая по сути дела делает то же, что и Tau Analyzer, но не так красочно. У неё есть несколько ключей, полный список которых можно увидеть, запустив её без параметров.
AuCDtect это консольная утилита, по определению качества уже самого wav файла. она имеет справку, которую можно получить запустив ее с ключем -h. Нас больше всего интересуют ключи:
-v означает verbose
-m0 означает наилучшая проверка (правда это сильно подгружает проц, и на это уходит много времени)
Запустить проверку AuCDtect необходимо вот так:

Код:

auCDtect.exe -v -m0 "G:\my Music\test\Браво - Московский бит (original).wav"
После раздумий программа выведет для нас информацию о проделанной работе в таком виде:

Код:

auCDtect: CD records authenticity detector, version 0.8.2
Copyright (c) 2004 Oleg Berngardt. All rights reserved.
Copyright (c) 2004 Alexander Djourik. All rights reserved.
------------------------------------------------------------
Processing file:        [Браво - Московский бит (original).wav]
Detected average hi-boundary frequency: 2.019619e+004 Hz
Detected average lo-boundary frequency: 1.329548e+004 Hz
Detected average hi-cut frequency: 2.170112e+004 Hz
Detected average lo-cut frequency: 1.221604e+004 Hz
Maximum probablis boundary frequency: 2.189100e+004 Hz
Coefficient of nonlinearity of a phase: 1.681929e-001
First order smothness: 3.745908e-001
Second order smothness: 6.177708e-001

------------------------------------------------------------
This track looks like CDDA with probability 100%
Как видите тест пройден на ура. Теперь запустим повторный тест для самопального диска:

Код:

auCDtect.exe -v -m0 "G:\my Music\test\Браво - Московский бит (damaged).wav"
Смотрим отчет:

Код:

auCDtect: CD records authenticity detector, version 0.8.2
Copyright (c) 2004 Oleg Berngardt. All rights reserved.
Copyright (c) 2004 Alexander Djourik. All rights reserved.
------------------------------------------------------------
Processing file:        [Браво - Московский бит (damaged).wav]
Detected average hi-boundary frequency: 1.989723e+004 Hz
Detected average lo-boundary frequency: 1.576554e+004 Hz
Detected average hi-cut frequency: 2.103419e+004 Hz
Detected average lo-cut frequency: 1.380924e+004 Hz
Maximum probablis boundary frequency: 2.189100e+004 Hz
Coefficient of nonlinearity of a phase: 1.791812e-003
First order smothness: 5.201091e-001
Second order smothness: 6.321902e-001

------------------------------------------------------------
This track looks like MPEG with probability 95%
Видно, что у AuCDtect есть сомнения, об этом говорит:

Цитата:

This track looks like MPEG with probability 95%
Тут я уже посоветовал бы воспользоваться Tau Analyzer для определения конкретного трека.
  Как альтернативу AuCDtect можно использовать программу Audiochecker, которую Вы можете скачать здесь.
Интерфейс я думаю у нее интуитивно понятен. Единственное что я бы порекомендовал, это зайти в опции и поставить галку, чтоб он автоматически сохранял log своей работы. Выбираем папку где лежат у нас файлы, жмем start checking и ждем. Можно оценить проделанную работу в самом окне программы, или зайти в папку и открыть лог файл, у меня он вот что содержит:

Код:

AUDIOCHECKER v1.2 - by Dester
~~~~~~~~~~~~~~~~~

1 -===- G:\my Music\test\Браво - Московский бит (damaged).ape
  Extracted successfully
  Conclusion: This track looks like MPEG with probability 95%

2 -===- G:\my Music\test\Браво - Московский бит (original).ape
  Extracted successfully
  Conclusion: This track looks like CDDA with probability 100%
Фактически то же самое что и лог AuCDtect только инфы поменьше.
Можно кстати заметить, что Audiochecker это GUI интерфейс для AuCDtect :-)

Инструкцию по работе с Audiochecker в картинках Вы найдете в этой статье.
Если же диск имеет .nrg-вид, то придётся либо сжечь CD-RW, либо смонтировать его в Alcohol 120% или Daemon Tools, а потом воспользоваться Tau Analyzer'ом, напущенным на виртуальный привод.

Ну что, победа? Нет, увы. Нас ждут

Проблемы и трудности
ОЧЕНЬ ВАЖНО: Разумеется, ни один алгоритм не может точно определить подделку. Он может лишь вынести вердикт с определённой вероятностью. Так что не нужно слепо доверять программе. Как правило, если выдано, что это CDDA с вероятностью 100 или 99 процентов, то беспокоиться насчёт качества не следует, но всегда бывают досадные исключения.

Ещё раз повторяю: встречаются диски, на которых Tau выдаёт странные результаты, например: часть дорожек MPEG, часть -- CDDA. Если говорить честно, то лучшая гарантия качества --- это фирменный лейбл и маркировка диска (DISCID), потому что в этом случае можно действительно обратиться в звукозаписывающую контору и предъявить претензии. Увы, недавно я столкнулся с диском, который был получен оцифровкой с плёнки, и определялся как 100% MPEG, хотя таковым не является. И обратно, можно обмануть Tau, налагая высокочастотный шум на MPEG-запись. Как показали анализы читателей, обманчивые результаты можно получить, используя AAC-кодек.

-- "И что же, всё напрасно?" -- скажете Вы.
-- "Нет, к счастью, не всё." -- отвечу я.


Что ещё можно сделать
На самом деле, более тщательный анализ требует детального изучения спектра. Рубленный сверху спектр --- плохой признак. На качественном диске обычно спад спектра бывает довольно плавный, резкой границы нет. Кроме того, некоторые особенности сжатия MPEG Layer III продуцируют то, что называется "гранулярность частот" -- это такие маленькие "ступеньки" на спектрограмме (откуда они берутся -- читайте документацию по MPEG Layer III).




Как получить частотные спектры аудио-файла
Кроме Tau Analyzer, возможности которого были рассмотрены выше, существует множество профессиональных и не очень программ, позволяющих получить спектры. Рассмотрим некоторые из них.

Открываем звуковой файл
и видим вот такую картину:
Выбираем опцию показа спектра:
и собственно, видим спектр
нажимаем принтскрин и обрабатываем картинку в любимом графическом редакторе
После этого, включаем опцию показа частотной характеристики
и видим АЧХ того места записи на котором стоит курсор
Панель при необходимости можно увеличить, затем опять же нажимаем принтскрин и обрабатываем картинку в любимом графическом редакторе
Обратите внимание на то, что спектр показывается на всю длину файла, а АЧХ - только то место записи, в котором стоит курсор.
Загружается любой файл (или целый Имидж) в любом формате!

Здесь следует понять часть теории - мр3 ВСЕГДА обрезает какие-либо частоты БЕЗВОЗВРАТНО. Эти *обрезания* всегда будут видны на спектрах, независимо в каком формате находится файл.
Сэмпл АудиоФайла (числовое значение) генерирует сразу несколько частот звука (звуковых волн), если в мр3 была *подрезана* какая-либо из частот (или сразу несколько согласно психоаккустической модели) - это будет сразу видно по плотности спектра.

Открытие *визуализации* спектра


Так выглядит мр3 СВR (постоянный БитРейт)


Так выглядит мр3 VBR (переменный БитРейт) где подрезаются несколько частот


Так выглядит *Лослесс* созданный из мр3-VBR (flac)


Так выглядит Лослесс где видна работа Звукорежиссера над отдельной частью файла - там сразу подвергались *обработке* много частот (Flac)


Так выглядит РЕМАСТЕР где подняты гармоники (APE)


А это - простой Лослесс (оригинал в Имидже - Flac)


Так что не обязательно для проверки на Фарш закатывать на Диск или конвертить в wav - можно все сделать быстрее.
Сумасшедшее количество настроек изображения, плюс - очень хорошая прога, всегда пригодится в работе..

Итак: прога iZotope RX Advanced v1.04

Начало работы - нужен wav файл, который можно затащить на иконку программы...

Открытие и выбор вида спектрограммы:


Основные элементы управления:


Spectrum analyser показывает значение на момент положения курсора проигрывателя!



    Я очень советую Вам, если Вы действительно хотите серьёзно заниматься распознаванием подделок, самостоятельно экспериментировать. А именно, сжимать в фарш разными программами и в разных режимах, а потом смотреть на спектр и изучать его особенности и отличия от оригинала. Ну и конечно же, проводить слепые тесты по распознаванию фарша на слух -- то есть слушать в произвольном порядке оригинал и фарш, сделанный из этого оригинала, и не глядя пытаться угадать, "кто есть кто" (такие эксперименты можно проводить, обзаведясь хорошими наушниками и маломальски приличной звуковой картой (ну не за $10 хотя бы...) -- тогда услышать разницу будет проще).

Ну и напоследок хочу заметить, что даже если Вы не слышите разницы -- это ещё не повод плевать на то, фарш или не фарш. Музыка -- это святое, и любое её коверканье, с моей точки зрения есть зло, с которым надо бороться. Быть может, Ваш друг, которому Вы дадите послушать "левый" диск, услышит эту разницу...

Для *NIX-пользователей
Информация любезно предоставлена Seclorum

Для пользователей Linux удобно проводить анализ звукового материала при помощи Baudline (http://www.baudline.com)
Для счастливых обладателей Gentoo Linux имеется ebuild: http://forums.gentoo.org/viewtopic-t-628796-highlight-.html

Удачи!
info [Профиль]  [ЛС] 
Показать сообщения:    
Тема закрыта

Текущее время: 19-Апр 06:21

Часовой пояс: GMT + 4



Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы