Обычная ситуация — вы прячетесь от июльской жары в любимом кафе, потягивая ледяной фраппе, как вдруг из динамиков начинает звучать тот самый главный хит этого лета, который вы все время слышите, но никак не можете найти. Запускаете Shazam, нажимаете на кнопку «распознать» и стараетесь подобраться с ним поближе к источнику звука. Поиск композиции занимает буквально несколько мгновений, но главный вопрос в вашей голове остается без ответа — как же он все-таки это делает?
Музыкальная дактилоскопия
Каждый когда-либо изданный или созданный человеком звук имеет свой уникальный отпечаток. Ближайший аналог — отпечатки пальцев, которые за последние годы совершили прорыв от баз данных правоохранительных органов и систем безопасности до совершения мгновенных покупок и разблокировки с мобильных устройств.
Если отпечаток пальцев образован нашими папиллярными узорами, то аудиооттиск звука состоит из трех ключевых элементов — времени, интенсивности и частоты. Все они располагаются на спектрограмме — 2D-графике, где время и частота занимают оси x и y, а интенсивность определенной точки обозначается характерным цветом на общем рисунке — от холодных к горячим оттенкам.
Как происходит поиск
Работа Shazam построена на сопоставлении локальной копии отпечатка звука (отрывок до 10 секунд) с уже имеющей базой спектрограмм в хранилище сервиса. Во время записи приложение захватывает самые громкие ноты, выбивающиеся из общего уровня шума, поэтому чем ближе ваше устройство к источнику звука — тем лучше.
Сам механизм поиска достаточно прост. Каталог Shazam хранится в формате хэш-таблицы, где ключом является значение частоты, полученное из вашей спектрограммы.
В процессе поиска сервис сопоставляет основной и опорный пик интенсивности вашей спектрограммы с данными таблицы.
Спустя немного времени ключ «отпирает» необходимую ячейку таблицы, выводя на экран название композиции.
Компания утверждает, что в ее хранилище сейчас находится около 11 миллионов песен и это число постоянно увеличивается. Для расширения фонотеки активно используется принцип «с миру по нитке — голому на рубашку», так как большую часть основной и вспомогательной информации Shazam получает от партнеров.
Музыкальный контент сервис черпает у Believe Digital, CDBaby, DistroKid и других известных дистрибьюторов, биографии исполнителей и коллективов подтягивает из AllMusic, а тексты песен — с портала LyricFind. Так что, если вы собираетесь добавить очков узнаваемости своему бренду — самое время пробежаться по этим чекпойнтам, чтобы попасть в поисковую выдачу Shazam.
Реверанс в сторону современного искусства
Спектрограмма, как рисунок успела стать полем для творчества. Для этого используется возможность пойти от обратного — не создать на основе композиции спектрограмму, а записать трек на основе рисунка. Так, ценители творчества Aphex Twin в 1999 году получили внезапный бонус к синглу Windowlicker — второй трек на B-стороне под названием «ΔMi⁻¹ = −αΣn=1NDi[n][Σj∈C[i]Fji[n − 1] + Fexti[n⁻¹]]» (также известен, как «Уравнение» и «Формула»). В спектрограмму композиции было добавлено изображение характерной улыбки Ричарда Джеймса (появление на 5:30).
Не остался в стороне и «отец» современного индастриала — Трент Резнор из Nine Inch Nails, в 2007 добавивший наглядную иллюстрацию в спектрограмму песни My .IOlent Heart.
17 лет в седле
Несмотря на свой достаточно преклонный возраст (датой основания компании числится 1999 год), Shazam по-прежнему удерживает позицию уникальной поисковой машины для меломанов. Основной толчок его популярности дал тот факт, что в июле 2008 году приложение стало одним из первопроходцев только запустившегося Apple App Store, а спустя несколько месяцев в октябре того же года добавило себе очков популярности и с запуском Android Market (ныне известного, как Google Play).
А в те моменты, когда вы будете немного раздражены тем, что медленный интернет, тихий звук или слишком громкая компания по соседству мешают опознать песню или же Shazam с упорством маньяка подсовывает какой-то странный ремикс от DJ Mamkin Hooligan — вспомните следующий факт.
В 2002 году, чтобы распознать при помощи Shazam нужный трек, необходимо было набрать на кнопочном телефоне номер 2580 (в США), повернуть телефон к источнику музыки и с верой в лучшее ждать SMS с названием песни и именем исполнителя.