Я возненавидел комментарии и сделал Shazam для Tik-Tok

Все любят слушать музыку. И нет повести печальнее той, где я не могу найти понравившийся трек. А где море попсовых ремиксов, которые ты ищешь по запомнившейся строчке? В тик-токе.

Однажды мне окончательно надоело листать комментарии под постом в поиске названия песни, и я решил избавиться от этой проблемы, сделав Shazam-бота, для которого требуется только ссылка на видео.

Бот отправляет название трека
Бот отправляет название трека

От автора

Это будет короткий рассказ следующего содержания:

  • Как мы пришли к идее такого бота
  • Как мы его сделали
  • Почему нам нравится :)

Здесь нет подробных рецептов и анализов. Мы придумали и создали - не так много для длинного рассказа, правда?

P.S. В конце обязательно оставлю ссылку на результат

Идея

У каждого есть вирусная идея, но не каждый хоть раз пытался ее реализовать.

В свое время десятки идей, которые казались перспективными, были заброшены по причине переоценки или выгорания. Хорошую привычку мне когда-то подсказали: молниеносно записывать все идеи, которые возникают в голове, в отдельный список.

Я собрал около ~20-30 пунктов за пару лет, а реализованные можно пересчитать на пальцах одной руки.

Далеко не все проекты, кажущиеся крутыми сегодня, будут наполнять вас энтузиазмом завтра.

“Личный Shazam” не был взрывным в моей голове - но он решал настоящую проблему, сохраняя ссылки на тиктоки в переписке, и отправляя мне названия треков из них. Круто? Не знаю, но названия песен теперь у меня есть.

Как это работает?

  1. Увидел видео с прикольной песней, но она не подписана в аудиоряде тиктока
  2. “Поделиться в Telegram” -> Отправить “SongHunter”
  3. Через пару секунд бот присылает название трека из видео. Profit!

С момента релиза бота я забыл как выглядит комментарий “киньте трек”.

Разработка

Не самая трудный проект, если вы когда-либо делали чат-ботов для мессенджеров. Этот делался для Telegram.

Основная проблема была в том, что у тиктока достаточно скрытный апи, и просто так нужный аудиоряд не достанешь.

Решением стала загрузка видео на сервер, извлечение аудиоряда, а после - использование “обертки” для Shazam API на Python. Сам я больше по Node.js, но благо мой товарищ - заядлый питонист, и поиск пакета без ограничения на количество использования расшифровки музыки не занял много времени.

Python-обертка берет то, что называется "fingerprint" аудиозаписи, и использует внутренний метод - основанный на Shazam API, - передавая туда этот самый "fingerprint". Путем сравнения определяются наиболее схожие аудиозаписи из базы и получается результат.

Потом мы собрали это все на дроплете в Digital Ocean и смахнули капельку пота - Telegram-бот был готов.

Результат

Сейчас, заходя “полистать” в Tik-Tok, у меня не возникает желания открыть комменты при первом понравившемся треке - я отправляю его SongHunter’y.

Иногда, конечно, барахлит на ремиксах от локальных диджеев, на которые заботливые контент-мейкеры поверх наложат “slow” + “reverb” + %фильтр_нейм%, но в абсолютном большинстве случаев - жизнь стала легче.

Ссылка на бота:

2424
31 комментарий

Сложно.

Я сделал проще: добавил виджет «Шазам» на рабочий стол телефона и в sharing menu.
И могу не сходя с места зашазамить играющий трек, и сразу добавить к себе В библиотеку Apple Music или даже купить трек или альбом.

Зачем этот гемор: копировать ссылку, идти в телегу, открывать бота, кормить ему ссылку, получать результат текстом, копировать текст, искать где-то по этому тексту…
Долго.

Шорткат пизже ))

3
Ответить

Это супер подход, если:
1) на устройстве есть шазам (+1 приложение)
2) пользователь готов (в случае андроида) держать его в фоновом режиме = постоянное использование микрофона аппкой

В моем случае, мне хватает Телеги + Тиктока.

1
Ответить

Тоже прикольно.

Но имхо мне удобнее боту отправить, особенно такому человеку как я который не покупает музыку)

Тем более я часто в наушниках хожу, поэтому мне проще ссылку боту скинуть. И я ее не копирую, а просто кнопкой прямо шерю в телеграм, после и выбираю бота (если юзал его, он вроде выше должен быть).

Поэтому тут тоже гемор по ситуации зависит)

1
Ответить

Комментарий недоступен

Ответить

скинь скрипт этого шортката

Ответить

Привет, хорошая затея. Я написал похожего бота, для анализа и поиска трека из видео, разница лишь в том, что мой умеет анализировать видео, выдёргивать и искать специфичные треки. Ну и в добавок, использую не только шазам, а кое что по интереснее, так мне удаётся выгружать не только название трека, но и кидать обработанную mp3 или ogg со всеми мета тегами. (Автор, картинка и все это вот)

Разработку его прекратил, не было времени заниматься им. Если кого-то это заинтересовало, можете написать, что нибудь придумаем :)

2
Ответить

Привет, спасибо!
Звучит интересно, я тоже изначально планировал расширить возможности бота, но по-итогу решил оставить самую основную функцию, хотя бы для стадии MVP.

Ответить