Принцип работы программ для распознавания музыки заключается в цепочке преобразований, через которые проходит музыкальная композиция, прежде чем становится известна информация о её названии и исполнителе. 1
Некоторые этапы процесса:
- Захват звука и его дискретизация. 1 Микрофон преобразует звуковые колебания в аналоговый электрический сигнал, который затем превращается в цифровой с помощью выборки значений амплитуд. 13
- Анализ частотных характеристик. 1 Из всего множества частот выбирают важные, особого внимания требуют частоты с наибольшими амплитудами. 1 С помощью интервалов для низких звуков удаётся распознать инструменты с низкой частотой звукоизвлечения, а с помощью средних и высоких — вокал и другие. 1
- Вычисление хэш-тегов. 13 Для упрощения поиска нужного трека его сигнатуры используются как ключи в хэш-таблице. 1
- Сравнение полученной сигнатуры с теми, что хранятся в базе данных. 1 Для этого используется «скользящее окно», или блок данных, и трансформируется часть сигнала, которая попадает в «окно». 13
- Сортировка записей с совпадениями. 1 В конце процедуры сопоставления с базой данных записи, в которых нашлись совпадения, сортируются в убывающем порядке. 1 Чем больше совпадений — тем выше вероятность рассчитать нужную композицию. 1
Современные технологии, такие как искусственный интеллект и машинное обучение, позволяют приложениям не только распознавать текущие треки, но и предсказывать, что пользователи могут захотеть послушать на основе их истории поиска. 2