Принцип работы алгоритма «Shazam». Сначала записанный трек, который необходимо распознать проходит процедуру, в процессе которой извлекаются хеши. Полученный «отпечаток» мелодии сравнивается с базой данных, затем происходит уточнение хешей, процедура повторяется.
Как треки попадают в шазам?
Процесс распознавания треков приложением Shazam представляет собой многоступенчатую процедуру.
- Формирование спектрограмм. При запуске Shazam приложение выполняет запись 10-секундного отрезка аудиосигнала и автоматически преобразует его в спектрограмму.
- Генерация отпечатка. Сгенерированная спектрограмма служит основой для вычисления уникального отпечатка, который представляет собой криптографическое представление аудиоданных.
- Отправка на сервер. Отпечаток отправляется на удаленный сервер, где хранится огромная база отпечатков известных музыкальных произведений.
- Сравнение отпечатков. Алгоритм Shazam сопоставляет входящий отпечаток с отпечатками в базе данных, используя техники проверки на совпадения.
- Идентификация трека. Если совпадение найдено, сервер возвращает название трека и другую сопутствующую информацию (исполнитель, альбом и т. д.)
Помимо вышеизложенного, следует отметить несколько интересных фактов о Shazam:
- Приложение использует технологию активного прослушивания, которая позволяет распознавать треки даже в условиях шумного фона.
- Сервер Shazam содержит базу данных, включающую более 20 миллионов отпечатков треков.
- Shazam также поддерживает функцию распознавания по визуальным образам, позволяя идентифицировать треки на основе изображений обложек альбомов или текстов песен.