True Audio Анализатор - Описание алгоритма
Детектор подлинности аудиозаписей (Aucdtect)
Aucdtect (CD authenticity detector) это алгоритм, разработанный для определения подлинности музыкальных компакт-дисков (CD) и записей, распространяемых в цифровом формате без потерь, например True Audio (TTA). Оценивая характер звуковых данных, содержащихся в файле или на компакт-диске, Aucdtect может отличить оригинальную, студийную аудиозапись от тех, которые были восстановлены из сохраненного с потерями в качестве источника, например MP3.
Описание алгоритма Aucdtect
Алгоритм работы программы состоит в анализе Фурье-спектров временных отрезков сигнала на протяжении всей звукозаписи и вычислении характерной граничной частоты на каждом временном отрезке. На основе анализа их статистических характеристик и базируясь на наборе критериев определяется источник звукозаписи – оригинал или сжатый с потерей качества звуковой файл. Тестирование, проведенное как на современных, так и на менее качественных старых записях показало хорошую точность алгоритма, устойчиво отличающего оригинальные записи от восстановленных из сжатых с потерей информации данных.
Не секрет, что интернет и файлообменные сети сейчас буквально наводнены музыкой. Обилие различных форматов, сжимающих музыкальные файлы только способствует этому. Наибольший уровень сжатия, и соответственно, наибольшую распространенность получили форматы, подобные MP3, обеспечивающие хорошую степень компрессии аудио данных с потерей качества. При проигрывании таких файлов на недорогих акустических системах сложно услышать отличия от оригинала, однако на чуть более качественной аппаратуре или в стереонаушниках такие искажения становятся сильно заметны, особенно если есть возможность сравнить запись с ее оригиналом.
Поэтому, при приобретении музыкальных компакт-дисков всегда встает вопрос: а действительно-ли этот диск не является подделкой? Для определения этого можно использовать спектральные характеристики сигнала, поскольку потерьные (lossy) алгоритмы существенно искажают эти характеристики сигнала, в отличие от оригинальной записи.
Алгоритм определения подлинности записи заключается в следующем:
1. Последовательно считывается каждый канал музыкальной записи. 2. На некотором отрезке вычисляется логарифм спектральной мощности с небольшой аддитивной добавкой для исключения ошибки вычисления логарифма [1]:
3. Определяется разброс значений логарифма спектра, максимальная частота сигнала, на которой разброс резко возрастает считается граничной, соответствующей некоей максимальной характерной частоте в спектре звукового сигнала, не связанной с числовыми статистическими шумами σ [3].
,где || s(f,T,Δf) || разброс значений s(f,T) в интервале частот [f,f + Δf].
4. По статистическому распределению граничных частот определяются две характерных частоты – средняя граничная частота и максимально вероятная граничная частота.
5. На основе значений этих частот делается вывод об источнике звукового файла – оригинальной записи или обратного восстановления из MPEG-подобного источника.
Проведенное тестирование показало устойчивость работы алгоритма как на современных записях, так и на копиях старых записей, для различных музыкальных направлений от классической до поп - музыки и одинаково устойчиво определяло их как подлинные. Тестируемые диски, которые были изначально определены, как восстановленные из сжатых с потерей информации данных, устойчиво определялись, как не подлинные.
Литература
- R.E.Blahut, Fast algorithms for Digital Signal Processing, (1985), 446.
- G.A.Korn, T.M.Korn, Mathematical handbook for scientists and engineers (1968) 832.