У вас бывало такое, что при просмотре сторис в Инстаграме в какой-то истории вы слышите зажигательную композицию, но не знаете кто исполнитель? Спрашивать автора истории неудобно, да и не факт что он ответит. А если песня ещё и на английском или другом языке, то напеть мотив или слова бывает крайне проблематично. С этой задачей справится сервис Shazam, разработанный непосредственно для распознавания музыки. В этой статье мы рассмотрим особенности приложения, а также, как пользоваться Шазамом.
Содержание
- Описание приложения Шазам
- Шазам Онлайн
- Как скачать и установить Шазам
- На Андроид
- На iOS
- Принцип работы Шазама
- Быстрые команды для iPhone
- Правила настройки Шазама и определение песни
- Как пользоваться автошазамом на телефоне
- При распознавании музыки вокруг
- При распознавании музыки в телефоне
- Включение фонового автошазама
- Как Шазамнуть музыку со своего телефона, с Инстаграма
- Почему не работает Шазам на телефоне
- Заключение
Описание приложения Шазам
Shazam — это кроссплатформенный сервис, который позволяет определить что за песня играет вокруг, и даже в самом телефоне с помощью микрофона на устройстве, где установлено приложение. Изначально это был коммерческий проект, и работал только на мобильных устройствах, но после того как компания Apple выкупила сервис, он стал бесплатным, из приложения даже убрали контекстную рекламу.
Приложение поддерживается для iOS, Android, macOS, WatchOS. При «прослушивании» музыки Шазам создает цифровой отпечаток мелодии и сопоставляет его с базой данных на серверах компании. На данный момент эта база содержит более 11 миллионов треков.
Шазам Онлайн
Шазамить музыку с устройства можно без установки приложения на телефон.
- Для этого просто перейдите по ссылке на официальный сайт Shazam, используя мобильный телефон и предустановленный браузер.
- На первом экране вы увидите пульсирующую кнопку с изображением логотипа Shazam.
- Нажимаем на неё, чтобы активировать инструмент прослушивания окружения.
- При необходимости во всплывающем окне выдайте браузеру разрешение на использование микрофона устройства.
- Далее сверните браузер и откройте любое другое приложение, откуда вы хотите прослушать музыку. Например, у вас на телефоне хранятся некоторые треки, которые подписаны как «Неизвестный исполнитель», и вы хотите узнать что это за песня.
- Запустите воспроизведение данного трека во встроенном проигрывателе и вернитесь в браузер с работающим с Шазамом.
- Несколько секунд и, если данная композиция есть на серверах сервиса, на экране вы увидите название песни исполнителя.
Обратите внимание: шазамить музыку, которая играет на том же устройстве откуда вы запускаете сервис Shazam можно только в тех приложениях, где возможно фоновое прослушивание. Например, в приложении Boom, во встроенном проигрывателе телефона, в платных подписках YouTube Music и прочее. Если в приложении нет возможности фонового прослушивания, Shazam увы работать не будет. Для этого предлагаем установить приложение на телефон и включить в нём функцию «Автошазам».
Важно! На данный момент онлайн Шазам не поддерживается. Возможно, в дальнейшем разработчики вернут веб-версию для браузера.
Или если у вас одна из последних моделей устройства iOS с версией 14.2, то можно Шазам вывести на экран на айфоне, как встроенную функцию.
Как скачать и установить Шазам
Скачать приложение можно с официального сайта, и непосредственно из Google Play Market или из AppStore.
На Андроид
- На странице с подробной информацией о приложении нажимаем «Установить».
- Дожидаемся скачивания и установки, а также проверки приложения встроенной системой безопасности телефона.
- Нажимаем «Открыть» и можно пользоваться всеми возможностями Shazam.
Альтернативный способ установки приложения на телефоне.
- На компьютере в любом браузере переходим на официальный сайт Шазама.
- На первом экране видим QR-код.
- Открываем на телефоне сканер QR-кодов и сканируем этот код в браузере.
- Нажимаем «Перейти на сайт».
- Автоматически запустится Google Play Market, где вы по аналогии с предыдущей инструкцией скачиваете и устанавливаете приложения себе на телефон.
На iOS
Инструкция по установке Шазам для iOS ничем не отличается от предыдущей. По ссылке вы перейдете автоматически на страницу с подробной информацией о приложение Shazam в магазине AppStore, где вам достаточно нажать кнопку «Установить» и дождаться завершения процедуры.
Принцип работы Шазама
Сразу после активации функции прослушивания окружающей среды приложение делает десятисекундную запись музыки, которую «слышит», переводит его в цифровой отпечаток и сравнивает с хранящимися в базе данных музыкальными композициями.
- База данных Шазама регулярно обновляется.
- Если находятся совпадения пользователь получает подробную информацию о треке и исполнителе – это так называемые метаданные: URL песни в iTunes, Amazon и т.д, с возможностью прослушать найденный трек.
- Если Shazam не находит совпадений вы получаете соответствующее уведомление на экране.
Примечание: программа умеет игнорировать посторонние шумы, которые могут попасть в запись.
Быстрые команды для iPhone
В версии iOS 14.2 появился встроенный Shazam, который позволяет определять музыку, которая звучит вокруг или в самом смартфоне без необходимости устанавливать приложение из AppStore. Функция по умолчанию неактивна её нужно включить настройках телефона. Это к вопросу, если вы обзавелись последней моделью айфона и не знаете, как добавить Шазам на панель управления.
- Переходим в «Настройки» далее жмём «Пункт управления».
- Переходим в раздел «Ещё элементы управления».
- Нажимаем на плюсик в строке «Распознавание музыки».
В панели управления появится иконка Shazam и функцию можно включить свайпом сверху (на моделях с Face ID) или снизу (на телефонах с Touch ID).
Правила настройки Шазама и определение песни
Для удобства работы с приложением его можно настроить в зависимости от пожеланий пользователя. И потом спокойно можно шазамить музыку как в Инстаграме, так и в Ютубе, или в Тик Токе, хоть на Айфоне, или в устройствах под управление Android.
- Открываем Shazam на телефоне и выполняем свайп справа для перехода в «Библиотеку».
- Далее жмём в левом верхнем углу на иконку шестерёнки, чтобы открыть «Настройки».
- Пройдите процедуру авторизации через учётную запись Google или электронную почту для сохранения в библиотеке ваших шазамов и доступа к ним с любого устройства.
Далее проверьте и настройте, в зависимости от ваших предпочтений, следующие пункты:
- Шазамить из панели уведомлений — включённая опция позволяет показывать постоянно уведомления для того, чтобы использовать Shazam в других приложениях.
- Всплывающий Шазам — показывает кнопку для чтения текстов песен и распознавания музыки в других приложениях.
- При желании подключите подписку Apple Music.
- Измените внешний вид предложения, выбрав тёмную, светлую тему или тему операционной системы.
- В блоке «Пример видео» вы можете настроить воспроизведение видео отрывков на странице песни.
- Функция «Автошазам» позволяет определять песню без предварительной активации функции. Все найденные шазамы будут находиться в библиотеке. Прослушивать вы их сможете в любой момент.
- Опция «Шазамить при запуске» — позволяет настраивать распознавание музыки при включении телефона.
- Включите при желании вибрацию по завершению распознавания трека.
Как пользоваться автошазамом на телефоне
Независимо от версии операционной системы использовать Shazam на телефоне для распознавания музыки и предельно просто.
При распознавании музыки вокруг
Если вы хотите узнать, какая песня играет на радио, в автобусе или в фильме, который вы смотрите по телевизору:
- Запустите приложение Shazam на своём телефоне и нажмите кнопку с логотипом приложения в центре экрана.
- Несколько секунд приложение будет слушать звуки вокруг и, если созданный отпечаток музыкальной композиции найдёт копию на серверах — вы получите метаданные этой песни.
- Вы также можете напеть мотив песни. Сигнатуры музыки и мелодии, которую вы споете в микрофон телефона ничем не отличаются. Shazam умеет распознавать даже мотив в исполнении человека.
На странице с подробной информацией о треке есть возможность прослушать композицию с того места, где Shazam закончил сканирование цифрового отпечатка. Также вы можете прослушать песню в сервисе Apple Music, тапнув по соответствующей иконке.
Если нажать на кнопку с тремя точками откроется дополнительное меню, где доступны следующие возможности:
- открыть в Apple Music;
- открыть в YouTube Music;
- удалить из библиотеки;
- поделиться в одном из установленных приложений на вашем смартфоне;
- открыть подробную информацию об исполнителе;
- если сервис неправильно определил песню вы можете нажать на флажок и сообщить Shazam об ошибке.
В меню сверху есть вкладки «Видео», где вы можете посмотреть клип данной композиции, если он есть. А также перейти на вкладку «Исполнитель» и посмотреть другие треки этого автора. На вкладке «Похожее» также сервис подберет вам композиции с похожим мотивом и настроением. Здесь могут быть песни этого исполнителя, но также и других.
Найденный Shazam будет сохранён в «Библиотеке» до того момента пока вы оттуда не удалите его. Здесь вы можете создать из найденных шазамов плейлисты для себя.
При распознавании музыки в телефоне
Перед тем как шазамить музыку со своего телефона в случае, если вы используете только одно устройство и вы хотите узнать играющую композицию:
- В приложении на этом же телефоне для начала в настройках активируйте функцию «Всплывающий Shazam».
- Далее его можно свернуть и перейти, например, в Тик Ток.
- Найдите трек, песню из которого вы хотите определить, и запустите воспроизведение.
- Далее свайпом от верхнего края включите Shazam на телефоне.
- Над аватаром автора канала вы увидите иконку Шазама с композицией, которую он определил.
- Нажимаем на всплывающее уведомление, чтобы перейти в Shazam и посмотреть или прослушать найденную композицию.
Включение фонового автошазама
Многие пользователи не знают, как зашазамить песню с телефона на этот же телефон — в этом случае поможет функция «Автошазам».
- Активируйте в настройках Шазама опцию «Автошазам».
- В панели уведомления и появится вкладка с информация о том, что функция включена и сервис слушает музыку в приложении.
- Далее откройте приложение, откуда хотите определить музыку и дайте возможность Shazam у несколько секунд прослушать трек.
- При успешном распознавании в «Панели уведомлений» вы увидите сообщение о найденном треке.
- Нажав поэтому уведомлению произойдет переход в библиотеку Shazam в раздел «Автошазам». Здесь будут собраны все композиции, которые определил сервис за время работы автоматической функции.
И как мы уже говорили раньше, включить Шазам в фоновом режиме на Айфон можно просто в настройках смартфона, если у вас данная функция поддерживается. Проверьте версию операционной системы.
Как Шазамнуть музыку со своего телефона, с Инстаграма
Зашазамить песню из Инстаграм со своего телефона можно в считаные секунды. В Инстаграме Shazam работает точно таким же образом. При включении «Автошазам» он будет сканировать все музыкальные композиции, которые будет слышать. Для этого, естественно, в при первом запуске Шазама вы должны выдать разрешение на доступ к микрофону устройства. А также включить Шазам в фоновом режиме.
Почему не работает Шазам на телефоне
Бывает так что Shazam не работает, то есть он не может определить музыку. Если не получается пользоваться шазамом на телефоне причина может крыться в следующем:
- Нестабильное или медленное соединение с интернетом — проверьте скорость интернета с помощью сервиса Speedtest. Перезагрузите роутер, маршрутизатор, устройство и попробуйте заново.
- Вы пытаетесь распознать музыку очень шумном месте. Посторонние шумы мешают приложению создать цифровой отпечаток композиции — попробуйте устранить источник постороннего шума или используйте наушники. Просто поднесите одно ухо к микрофону. Shazam должен определить композицию.
- Данного трека нет в библиотеке Shazam. Такое часто случается когда вы пытаетесь определить название песни или исполнителя, которые только-только начали продвигать себя и еще не обрели популярность. Соответственно, ещё не попали в базу данных Shazam. Напомним в этой базе хранится около 11 миллионов композиций, а их, как вы понимаете, в мире намного больше.
- В телефоне переполнен кэш — почистите память устройства. Удалите кэш приложений, а также другой мусор, который засоряет память и мешает корректно работает Shazam.
Заключение
Теперь вы знаете, как шазамнуть песню с Инстаграма, и других приложений, установленных на телефоне, и даже в автобусе, или в кино по телевизору. Приложение максимально точно определяет композицию и предоставляет возможность послушать найденный трек, и создать из ваших шазамов плейлист.
Есть два простых способа.
Услышали в видео крутую песню, но видеосервис приостанавливают воспроизведение, когда вы сворачиваете приложение, и использовать Shazam не получается? Есть сразу два способа, как с этим справиться без помощи второго устройства.
Способ 1. Автошазам
- Откройте приложение Shazam.
- Удерживайте кнопку поиска, пока не появится надпись «Автошазам включён».
- Откройте приложение с нужным видео и ждите, пока не появится уведомление от Shazam.
- Не забудьте снова зайти в Shazam и отключить автоматическое распознание, иначе приложение продолжит слушать и искать треки.
Способ 2. Добавьте кнопку в Пункт управления
Этот способ требует чуть больше времени, зато после первичной настройки пользоваться им проще и быстрее, чем Автошазамом.
Для этого:
- Откройте настройки смартфона и перейдите в раздел «Пункт управление».
- Найдите вариант «Распознавание музыки» с иконкой Shazam и нажмите на ⊕ слева.
Теперь, когда вы услышали интересный трек и хотите узнать его название, достаточно достать панель управления свайпом снизу вверх и нажать на кнопку с логотипом Shazam. Он найдёт одну песню и отключится автоматически.
Как распознать музыку на телефоне, на котором она играет
Наверное, все знают Shazam. Этот супер-сервис для распознавания музыки помог миллионам пользователей определить понравившийся трек, который вдруг заиграл по радио или из стоящей на светофоре машины. Помню, как сам пытался безуспешно найти весёлую песенку из рекламы по трём словам из первого куплета, которые мне на силу удалось расслышать, а потом воспользовался Shazam и наконец успокоился. Такие истории наверняка есть у каждого из нас, а название сервиса уже давно стало именем нарицательным и образовало глагол «шазамить», который вполне прижился в русской речи. Но раньше Shazam не был идеальным сервисом. А теперь, кажется, стал.
Shazam в iOS 14 стал намного удобнее
Что происходит? Все меняют иконки приложений в iOS 14, и вы тоже можете
Моей основной претензией к Shazam всегда была неспособность распознавать трек, звучащий на том же устройстве, на котором установлено приложение. То ли сервис просто не мог одновременно и воспроизводить музыку, и записывать её, то ли разработчики были уверены в том, что если уж пользователь запустил какой-то трек у себя на смартфоне или планшете, значит, он знает и исполнителя, и название композиции, а потому необходимости в распознавании в таком случае попросту нет. Но необходимость, как показывала практика, была, и Apple наконец прислушалась к просьбам пользователей.
Как включить автошазам
С выходом iOS 14 обновление получил и Shazam. В версии 13.25 он научился распознавать треки, звучащие на устройстве с приложением. Во многом эта стало возможно благодаря поддержке функции «картинка-в-картинке». Вот как это работает:
- Скачайте Shazam себе на iPhone и запустите его;
- Зажмите кнопку запуска и удерживайте её для включения режима автораспознавания;
Автошазам позволяет распознавать треки в фоновом режиме
- Покиньте Shazam и запустите на устройстве трек или видео с треком, который хотите распознать (подойдёт любое приложение и даже диктофонная запись);
- Дождитесь окончания распознавания и найдите трек по предложенной сервисом ссылке на сторонних площадках.
Над кем смеётесь? Пользователи Android высмеяли ключевые нововведения iOS 14
Возможность шазамить треки прямо на устройстве – это очень классное нововведение, которого многим пользователям не хватало очень и очень давно. А тот факт, что Apple прислушалась к их мнению и реализовала соответствующий механизм, заслуживает уважения и самой искренней похвалы. Но, оказывается, автоматическое распознавание можно сделать ещё удобнее, включая его прикосновением к задней крышке вашего iPhone.
Как быстро запускать Шазам
- Запустите приложение «Быстрые команды» и найдите в поиске команду Shazam;
- Добавьте её к списку своих быстрых команд;
Быстрая команда Shazam реально ну очень быстрая
- Перейдите в «Настройки» — «Универсальный доступ» — «Касание»;
- Включите параметр «Коснуться сзади» и назначьте на этот жест быструю команду Shazam.
iOS 14 устанавливают быстрее iOS 12 и iOS 13. Откуда такой интерес и стоит ли обновляться?
С этого момента, когда вы будете слушать какую-то композицию или смотреть видеоролик, в котором заиграет интересующая вас песня, просто коснитесь дважды задней крышки вашего iPhone. В этот же момент начнётся распознавание трека. Правда, учитывайте, что пока управление прикосновениями к тыльной панели работает не самым лучшим образом, а также поддерживает не все модели iPhone. Поэтому, если вы всё-таки хотите протестировать это нововведение, рекомендую для начала проверить его работоспособность и оценить, подходит реализация именно вам или нет.
iOS 14Музыкальные приложения для iPhoneСоветы по работе с Apple
Shazam — по-настоящему революционное приложение, которое появилось на Android в 2008 году и полностью изменило жизнь многих меломанов. Можно с легкостью представить себе ситуацию, когда где-то поблизости играет классная песня, которую вы слышите впервые. Как узнать ее название, чтобы добавить себе в плейлист? Хорошо, если есть возможность уточнить информацию у человека, включившего трек на своем устройстве. А что, если музыка играет в салоне проезжающего мимо авто?
У Shazam есть много скрытых возможностей, о существовании которых вы даже не подозревали
Именно для подобных ситуаций и нужен Shazam, который помогает определить песню. Приложение очень простое в эксплуатации, а потому оно пользуется огромной популярностью. Вам достаточно запустить программу, нажать кнопку распознавания и дождаться получения результата, на что обычно уходит от одной до нескольких секунд.
Shazam определит мелодию за пару секунд
Это стандартный вариант использования Shazam. Но у приложения есть масса других функций, позволяющих упростить распознавание, сделав его более удобным. Например, если вы часто не успеваете запустить приложение для определения песни, или музыка играет не на внешнем устройстве, а на самом смартфоне.
⚡ Подпишись на Androidinsider в Дзене, где мы публикуем эксклюзивные материалы
Содержание
- 1 Определить музыку на телефоне
- 2 Автошазам — что это
- 3 Найти песню по тексту
- 4 Самые популярные песни
- 5 Почему Шазам не работает
Определить музыку на телефоне
Как только не изворачиваются некоторые люди, чтобы распознать музыку. Например, мне знаком случай, когда человек услышал понравившуюся ему песню во время просмотра сериала на смартфоне. Для ее определения он поднялся с кровати, включил компьютер, запустил воспроизведение нужной серии, отыскал нужный фрагмент и врубил колонки едва ли не на всю громкость, а затем открыл Shazam на телефоне.
Это было, мягко говоря, не самое рациональное решение, ведь существует функция всплывающего шазама. Для ее включения или активации других фишек приложения нужно:
- Запустить Shazam.
- Перейти в раздел «Библиотека».
- Открыть настройки, нажав на «шестеренку».
В настройках можно активировать всплывающий шазам и другие полезные функции
Здесь и скрывается переключатель той самой функции всплывающего шазама. Если ее включить, на экране появится кружочек, который будет отображаться поверх других приложений. Для распознавания мелодии вам необходимо нажать на нее, после чего музыка определится без лишних костылей.
Для распознавания мелодии нужно нажать на кнопку
Отмечу, что держать этот кружочек в постоянном доступе нет никакой необходимости. Он исчезнет, если вы закроете приложение. Далее, когда появится необходимость в распознавании музыки в другой программе, запустите Шазам для вызова кружка и вернитесь в утилиту, где играет песня.
🔥 Загляни в телеграм-канал Сундук Али-Бабы, где мы собрали лучшие товары с АлиЭкспресс
Автошазам — что это
Еще чаще случаются ситуации, когда человек не успевает достать смартфон из кармана, чтобы определить песню. Согласитесь, не самый приятный сценарий. Особенно, если навязчивая мелодия не дает уснуть, заставляя вас вспомнить хотя бы одну строчку из песни, чтобы ее найти. Во избежание подобных ситуаций рекомендую активировать функцию автошазама. Ее можно включить через настройки приложения Shazam, шторку уведомлений или путем удержания кнопки распознавания на главном экране программы.
Включить автошазам можно несколькими способами
Если все сделано верно, Shazam будет анализировать всю играющую вокруг вас музыку, добавляя ее в отдельный каталог «Автошазам». Если вам надоест поступление уведомлений о распознавании песен, просто отключите их через ту же шторку или настройку. При этом автошазам продолжит работать, и вы не упустите ни одну музыкальную композицию.
С этой функцией песни определяются автоматически
Найти песню по тексту
Несмотря на то, что Shazam заточен под распознавание песен по звуку, он позволяет определить музыкальную композицию, если вы успели запомнить только одну строчку из понравившегося трека. В такой ситуации вы можете воспользоваться поиском по тексту:
- Запустите Shazam.
- Нажмите кнопку поиска.
- Введите несколько слов из песни.
- Подтвердите ввод нажатием галочки.
Главное — не ошибиться при вводе текста
Если вы не ошиблись при наборе текста, первой в выдаче Shazam покажет ту песню, в которой содержатся указанные вами слова. При этом не забывайте, что существует множество каверов с одними и теми же словами, но разным звучанием.
❗ Поделись своим мнением или задай вопрос в нашем телеграм-чате
Самые популярные песни
С 2018 года Shazam принадлежит компании Apple. Поэтому нет ничего удивительного в том, что внутри приложения для распознавания музыки интегрирована функциональность стримингового сервиса Apple Music. В частности, здесь есть вкладка «Хит-парады», с помощью которой вы сможете узнать, какие песни сейчас популярны в вашей стране или городе.
С помощью чартов Shazam можно узнать, какая песня пользуется наибольшей популярностью в вашем городе
Также Shazam дает подробную информацию об исполнителях, позволяя прослушивать музыку через приложение для определения мелодий. Наконец, программа делает подборки в зависимости от того, какие треки вы искали в последнее время. Но, чтобы слушать песни целиком, понадобится оформить подписку на Apple Music.
Почему Шазам не работает
В заключение дам несколько рекомендаций на случай, если у вас не работает Шазам на Андроид, или возникли другие проблемы, связанные с этим мобильным приложением. При первом запуске Shazam требует выдать несколько разрешений. Например, на доступ к микрофону. Если его не дать, приложение не сможет угадать песню.
⚡ Подпишись на Androidinsider в Пульс Mail.ru, чтобы получать новости из мира Андроид первым
Кроме того, для стабильной работы функций автошазама и всплывающего шазама необходима выдача разрешений на отображение Shazam поверх других приложений и фоновую активность.
Для полноценной работы приложению нужно выдать все разрешения
Поэтому при возникновении каких-либо сложностей необходимо открыть настройки телефона, перейти в раздел «Приложения», выбрать Shazam и перейти во вкладку «Разрешения». Здесь вы сможете ловко управлять всеми параметрами приложения, адаптируя его работу под себя.
Оценка этой статьи по мнению читателей:
Последний альбом группы Queen с участием легендарного Фредди Меркьюри был записан уже после смерти вокалиста. И в этом альбоме есть одна интереcная песня, собранная буквально по кусочкам из обрывков записей Меркьюри, сделанных незадолго до смерти.
Эта композиция не должна была появиться и никто в Queen даже не думал, что из этих обрывков что-то можно сделать. Но продюсер группы практически самолично собрал всё воедино и создал знаменитую… как же ее… Простите, но название совершенно вылетело из головы.
И что же делать в подобных ситуациях?
Раньше, услышав красивую песню где-нибудь в кафе или на улице, вы могли достать смартфон, запустить приложение Shazam или SoundHound и тут же получить всю подробную информацию. Но сегодня бурный рост технологий позволил нечто большее!
Возвращаясь к забытой песне Фредди Меркьюри, мне достаточно запустить на смартфоне Google Ассистент, сказать фразу «Что сейчас играет?», а затем просто напеть мелодию, которая крутится в голове — «та-да-та-тааааа та-та-та-таааа та-да-та-таааа»:
И буквально через несколько секунд смартфон выдает правильный результат — You Don’t Fool Me группы Queen:
Как это вообще возможно!? Обычно в таких ситуациях отвечают — искусственный интеллект. Но если вам хочется получить настоящий ответ, тогда предлагаю вместе со мной погрузиться в увлекательный мир музыки!
После прочтения этой статьи вы поймете, как именно бездушный процессор смартфона стал еще на один шаг ближе к человеческому разуму. Или, по крайней мере, научился еще лучше его имитировать.
Часть 1. Природа звука
Бессмысленно говорить о том, как работает Shazam или распознавание музыки в целом, если не понимать, что такое музыка и звуки вообще. Поэтому вначале я уделю немного внимания этому вопросу.
Если же вы хорошо в этом разбираетесь, тогда переходите к следующему разделу. Но помните — понять работу Shazam без понимания этих основ будет тяжело.
Итак, звук возникает у нас в голове, когда воздух стучит по барабанной перепонке в наших ушах. Очень подробно этот процесс я описывал в статье о шумоподавлении или вреде громкой музыки. Так что здесь не будем повторяться.
Сам по себе воздух не может ни ударить по барабанной перепонке, ни сдвинуть с места даже пылинку. Это делают миллиарды молекул, хаотично летающих в пространстве.
Но чтобы они могли что-то или кого-то ударить, вначале нужно хорошенько их толкнуть — в точности как шары в бильярде. Именно это и делает любой динамик. Он движется вперед и назад, толкая молекулы воздуха то в одну, то в обратную сторону.
Мы даже можем отобразить это движение динамика на графике в виде волны:
Чем сильнее динамик отклонится в сторону (или вверх/вниз на графике), тем выше будет волна, а значит звук — громче. То, какую ноту или звук мы услышим, зависит только от того, сколько движений вперед-назад за одну секунду сделает наш динамик.
Если за 1 секунду произойдет 440 движений вперед-назад, мы услышим ноту ля. И не важно, что будет вибрировать 440 раз в секунду — струна гитары, фортепиано или школьная линейка, прижатая одной стороной к столу — мы будем слышать ноту ля.
Вот только если это будет делать динамик, вместо приятного звука мы услышим не очень приятный монотонный гул:
Почему так происходит? Почему, когда мы нажимаем клавишу ля на пианино, она звучит приятно, а не так «искусственно», будто сгенерирована на компьютере?
Всё дело в том, что в реальном мире практически не существует идеальных движений. То есть, если бы струна гитары или скрипки вибрировала или двигалась вперед-назад только так:
Тогда бы мы услышали точно такой же монотонный неприятный гул, как в примере выше. Что более интересно, совершенно неважно, на каком инструменте мы пытались бы воспроизвести ноту ля (на фортепиано, скрипке, гитаре) — во всех случаях мы бы услышали один и тот же монотонный звук.
А теперь посмотрите в замедленном движении, что происходит со струной в реальности (на примере скрипки):
Такое движение скорее можно схематически изобразить вот так:
И это еще очень упрощенный пример. На самом деле, движение струны гораздо сложнее! Струна вибрирует вся целиком (как показано на первой анимации) и создает звук на частоте 440 Гц (монотонная нота ля). Но также вибрирует и каждая половинка струны, создавая звуки на частотах 880 Гц (половинка в два раза короче целой струны, а значит и вибрирует в 2 раза быстрее, т.е. 880 раз в секунду).
Кроме того, струна вибрирует третями, четвертями и т.д. И каждый участок струны, вибрируя, запускает еще отдельные звуковые волны на частотах в 3, 4, 5 (и так до бесконечности) раз выше основного тона (в нашем примере — нота ля или 440 Гц). Каждая такая вибрация создает свой собственный монотонный звук на более высоких частотах.
Мы называем такие звуки гармониками. То есть, основная гармоника — это частота 440 Гц (если мы говорим о ноте ля), вторая гармоника — это когда струна будет вибрировать половинами, т.е. звук на частоте 880 Гц, третья гармоника — 1320 Гц (440*3) и так далее.
А теперь добавьте к этому еще и вибрацию корпуса инструмента, например, скрипки. Ведь струна жестко закреплена на корпусе и ее вибрация также приводит к вибрации всего инструмента. Эти вибрации в свою очередь зависят от породы дерева, толщины корпуса и его формы.
Каждая такая вибрация добавляет к нашему ансамблю звуков еще и свои монотонные писки на разных частотах.
Именно эти дополнительные частоты/ноты/звуки, вызванные особенностями колебания струны/корпуса и создают уникальный тембр каждого музыкального инструмента.
Мы можем даже самостоятельно создать звук похожий на пианино или гитару, просто взяв монотонный гул, который я приводил выше, и добавить к нему еще различные монотонные пищалки, только на более высоких частотах и с разной громкостью.
От того, насколько громко (и как долго) будет звучать каждая дополнительная частота и зависит тембр инструмента.
Реальная звуковая волна
Вы наверняка не раз видели звуковую волну какого-то реального звука и она совершенно не похожа на все эти красивые графики волн, которые встречаются в статьях, например, такую:
В реальности звук «выглядит» скорее так:
Но как это понимать? Где здесь красивые привычные волны? Как хотя бы понять частоту этой звуковой волны? Напомню, частота — это количество волн за секунду. К примеру, на синем графике чуть выше мы видим частоту 8 Гц или 8 волн за секунду. А на втором графике вообще отсутствуют какие-то повторяющиеся узоры. Почему?
Ответ на этот вопрос уже дан чуть выше. Ни один инструмент не создает только одну звуковую волну на одной частоте. В этом случае мы бы слышали монотонный гул. Но так как на основной тон накладывается еще десяток-другой частот, график полностью искажается.
Вот, к примеру, у нас есть основная частота 440 Гц (нота ля):
Струна будет создавать другие частоты, первой из которых станет 880 Гц (это вторая гармоника или 440*2). Такая частота будет получаться, когда две половинки струны будут вибрировать отдельно. И выглядеть вторая волна (880 Гц) будет уже так:
То есть, мы видим, что количество волн увеличилось вдвое (440 Гц и 880 Гц). Но две волны не будут путешествовать по воздуху отдельно, они сольются в одну. И какой же она будет?
Какие-то пики одной волны совпадут с впадинами другой и немного погасятся, в каком-то месте пики двух волн наложатся и она станет еще выше (громче). В общем, вместо двух волн разной частоты мы получим одну волну такого вида:
Глядя на эту волну, мы даже можем легко себе представить, как именно будет двигаться динамик, чтобы воспроизвести этот звук.
Вначале он максимально отклонится вперед, толкая молекулы на нас, затем назад до состояния покоя (прямая серая линия или 0 по оси Y — это состояние покоя), затем немножко вперед (маленький зеленый горбик на графике), после чего резко назад, втягивая воздух обратно (зеленая линия идет вниз, ниже серой полоски). Затем динамик снова вытолкнет весь воздух вперед (максимальная горка на графике) и так далее.
Естественно, чем больше разных частот будет создавать струна своим колебанием, тем сложнее окажется финальный «рисунок».
Таким образом, реальная звуковая волна — это результат наложения сотен волн различной частоты. Оттого она и выглядит так сложно.
На этом мы, пожалуй, и остановимся. Этих знаний должно хватить для понимания основной темы.
Часть 2. Как работает Shazam и любая другая технология распознавания музыки
Если я попрошу вас напеть какую-то музыкальную композицию, что именно вы споете? Будете ли вы учитывать басовую партию или партию ударных инструментов? А если речь идет об оркестровой музыке, в которой одновременно могут звучать десятки музыкальных инструментов?
Конечно же, вы просто напоете основную мелодию, игнорируя всё остальное. И что самое удивительное, я без проблем пойму, о чем идет речь. Даже если до вашего исполнения слушал эту композицию только на хорошей акустике в высоком качестве.
То есть, мы интуитивно можем сократить очень сложную и красивую музыку до нескольких простых нот. Точно так же работает и технология распознавания музыки. Вот только у смартфона нет интуиции и в этом его проблема.
Для бездушной железки даже самая прекрасная мелодия ничем не отличается от рёва мотора или простого шума ветра. Поэтому мы должны создать алгоритм, который бы привил смартфону чувство прекрасного. Этим и займемся!
Шаг 1. Анализируем частоты
Чтобы Shazam или любой другой сервис мог хоть что-то сделать с музыкой, он должен для начала ее «понять». То есть, вместо сложного и бессмысленного графика, вроде этого:
Наш смартфон должен увидеть, какие конкретно частоты звучат в каждый момент времени. Другими словами, он должен получить музыку в том виде, в котором она была до того, как все частоты смешались в один поток и направились к звукозаписывающей аппаратуре на студии.
К примеру, вместо сложной волны от нажатия клавиши фортепиано, в которой смешались монотонные звуки на частотах 440 Гц, 880 Гц и 1320 Гц, нам нужно получить эти частоты отдельно и узнать громкость каждой из них:
Это как если бы я показал вам цветное пятно и сказал, чтобы вы назвали, какие основные цвета и в какой пропорции я смешивал, чтобы получить этот уникальный цвет.
К счастью, нам не нужно ломать голову над этой задачей, так как ее успешно решил французский математик еще в 1807 году! Так появилась функция под названием преобразование Фурье.
При помощи этого математического метода мы получаем из сложной волны набор всех частот, из которых она состоит, а также амплитуду (громкость) каждой из них.
После этого у смартфона появляется спектрограмма. Это такой график, который по оси Y показывает конкретную частоту, а по оси X — время. То есть, мы можем видеть, какие частоты и насколько громко звучат в каждый момент времени:
Так как у нас только две оси (X и Y), то громкость мы отображаем цветом. Чем ярче цвет — тем громче звучит эта частота.
К примеру, на спектрограмме выше мы видим, как где-то на 9-й секунде (по оси X) очень громко заиграли все инструменты или все частоты (красная вертикальная линия). А где-то на 31-й секунде частоты свыше 1500 Гц вообще пропали, то есть, в этот момент они не звучат в нашей композиции:
Согласитесь, в таком виде работать с музыкой гораздо проще и понятнее, чем смотреть на бессмысленный график ломаной линии. Здесь мы можем, к примеру, убрать какой-то дефект на частоте 10 000 Гц (какой-то лишний звонкий писк). Ведь мы увидим яркую полоску сверху, которую можно удалить, а затем снова сложить все частоты в один звук, но уже без удаленной частоты.
Теперь давайте подытожим. На первом шаге смартфон переводит записанный фрагмент мелодии в спектрограмму. Но пользоваться ею не получится. Ведь помимо мелодии, здесь присутствуют и посторонние звуки (шум улицы, кафе или разговоров, низкое качество микрофона и пр.).
Кроме того, в этой спектрограмме очень много информации. Смартфону она не нужна, как и нам не нужно знать все партии каждого инструмента, чтобы напеть фрагмент мелодии. И это приводит нас ко второму шагу.
Шаг 2. Создаем карту созвездий
Первое, что мы сделали для облегчения спектрограммы, это записали звук в режиме моно (стерео нам ни к чему), а также обрезали все частоты свыше 5000 Гц (или 4000 Гц — в зависимости от сервиса или алгоритма).
Естественно, качество звука сильно упало, так как мы слышим частоты до 15-20 тысяч герц (в зависимости от возраста) и эта информация есть в каждом музыкальном произведении. Но для распознавания музыки эти частоты совершенно не нужны. Основная мелодия находится гораздо ниже (в пределах 100-2000 Гц):
На этой картинке мы видим, что основной диапазон голосов и музыкальных инструментов (насыщенная темная часть каждой полоски) легко помещается до 1000 Гц, а уже гармоники уходят до предела слышимости.
А теперь начинается самое интересное! Алгоритм начинает анализировать полученную спектрограмму и искать на ней самые яркие области в каждый момент времени. Другими словами, он определяет, какие частоты (можем для простоты называть их нотами) звучат наиболее громко в конкретный момент времени.
Давайте возьмем нашу спектрограмму и отметим белыми точками такие «основные» частоты или ноты:
Сколько конкретно точек отмечает Shazam — сказать сложно, но это точно небольшое число (сравнительно). После такой обработки вместо массивной спектрограммы с большим количеством данных мы получаем очень компактную и аккуратную картину:
Теперь это своего рода уникальный отпечаток конкретной композиции. В Shazam его называют картой созвездий. Это примерно то, что делает наш мозг, когда мы хотим напеть сложную композицию — выделяет самые главные ноты.
Эта карта созвездий буквально показывает следующее:
- На 1-й секунде самые громкие частоты — это 512 и 2048 Гц
- На 5-й секунде самая ярко выраженная частота — 512 Гц
- На 30-й секунде композиции наиболее выражены частоты 1800 Гц и 4100 Гц
- И так далее
Помимо того, что мы колоссально сократили размер композиции, этот процесс естественным образом удалил все лишние звуки, так как на записи именно основная мелодия будет наиболее ярко выражена. Также мы удалили все гармоники, так как они практически всегда звучат тише основного тона.
Такую карту приложение создает на смартфоне еще до отправки данных на сервер Shazam. То есть, смартфон не передает звук.
В свою очередь компания также не хранит миллионы музыкальных композиций на своих серверах для сверки данных. Она пропустила каждую песню через этот алгоритм, чтобы получить ее «отпечатки». Они-то и хранятся на серверах.
Точнее, не совсем они…
Шаг 3. Убиваем главного врага — время
На данном этапе мы столкнулись с довольно серьезной проблемой. Предположим, вот это карта созвездий полноценной композиции на сервере Shazam:
Но человек даже теоретически не сможет каждый раз начинать записывать фрагмент интересующей его музыки с самого начала. Он может записать маленький кусочек где-то в середине композиции или за несколько секунд до конца песни.
В итоге, на смартфоне появится вот такая карта:
Если вы внимательно посмотрите, то увидите, что это фрагмент той же песни, что показана на карте чуть выше. Только в оригинале эти частоты (ноты) встречаются примерно с 19-й по 26-ю секунды, а здесь — примерно со 2-й по 9-ю.
Получается, смартфон передает серверу, что он услышал композицию, у которой на 5-й секунде ярко выражены 3 частоты: 510 Гц, 800 Гц и 1600 Гц (на графике по оси Y указаны только несколько частот, поэтому я называю частоты примерно).
Если сервер начнет искать у себя в базе данных композицию, у которой на 5-й секунде встречаются такие же основные частоты, то он может выдать любой результат, но только не правильный. Так как в оригинале эти частоты встречаются примерно на 22-й секунде.
А если не искать частоты с привязкой ко времени, то среди нескольких миллионов композиций может найтись сотня таких, в которых просто где-то встречаются 3 указанные частоты.
Что же делать?
Нужно избавиться от привязки ко времени, сохранив при этом привязку ко времени! Хотя это и кажется нелогичным на первый взгляд, решение получилось весьма элегантным.
Вместо списка частот (нот) с привязкой к конкретной секунде, мы берем одну любую точку на карте и связываем ее с несколькими другими точками. Например:
То есть, мы взяли опорную (главную) точку O (на 19-й секунде) и связали ее с несколькими другими точками (частотами/нотами) — a, b и c.
Под словом «связали» я лишь подразумеваю следующее. Мы берем две частоты и разницу во времени между ними. То есть, если мы говорим о связи O->A, тогда это две частоты: 515 Гц (точка O) и 1600 Гц (точка A), а разница во времени между ними составляет 3 секунды (точка A на 22 секунде минус точка O на 19 секунде).
Вот и всё! То есть, вместо конкретных частот с привязкой к определенному времени, мы храним информацию о том, как связаны конкретные частоты между собой. Например, сохраняем информацию о том, что в определенной композиции звук на частоте 1600 Гц начинается спустя 3 секунды после звука на частоте 515 Гц.
Теперь мы можем передать эту информацию на сервер и он поищет, есть ли у него в базе такая мелодия, в которой прозвучала частота 515 Гц, а затем ровно через 3 секунды был звук на частоте 1600 Гц.
Конечно, мы передаем не одну «связку частот», а множество. И какие-то пары будут встречаться в разных композициях, особенно если это ремикс популярной песни. Но Shazam или любой другой сервис выдаст в качестве результата ту песню, в которой таких совпадений было больше всего.
Размышления вместо выводов
Только что мы рассмотрели базовый принцип работы любого сервиса по распознаванию музыки. Конечно, у вас могло остаться множество вопросов, так как я хотел раскрыть тему в общих чертах, чтобы она была понятной самому широкому кругу читателей.
Например, не совсем понятно, по какому принципу алгоритм выбирает опорные точки, от которых затем строит связи с другими частотами.
Ответа на этот вопрос у меня нет, так как Shazam не раскрывает свои алгоритмы в таких деталях. Возможно, компания выбирает для каждого момента времени первую по счету точку (счет ведется снизу вверх слева направо) и связывает ее с несколькими рядом стоящими точками.
Кроме того, я не рассказал о том, как именно передаются и хранятся такие записи. Для этого используются хеши. Но само понятие хеш-функции настолько интересное и важное, что мне не хотелось использовать его без подробного и понятного объяснения. А это бы заняло еще больше места в статье и усложнило восприятие информации.
Также мы коснулись только алгоритмов, без упоминания нейросетей. А именно последние используются Google Ассистентом для определения мелодии, когда человек просто напевает или насвистывает мотив песни.
В этом случае также создаются уникальные «отпечатки» каждой песни, только затем добавляется еще один важный этап. Когда Google создала базу «отпечатков», для каждой такой песни были собраны «отпечатки» простых мелодий, напетых обычными людьми.
Затем нейросеть обучили находить оригинал по плохому неточному отпечатку, полученному с напетой человеком мелодии. Когда нейросеть прошла обучение на тысячах примеров, теперь она способна самостоятельно сопоставлять отпечаток напетой мелодии с отпечатком оригинала на серверах Google.
Более подробно о том, как работают нейросети и что такое обучение нейросетей, мы рассказывали в отдельной статье.
Алексей, глав. ред. Deep-Review
P.S. Не забудьте подписаться в Telegram на наш научно-популярный сайт о мобильных технологиях, чтобы не пропустить самое интересное!