Как узнать BPM своей музыки офлайн
Узнать BPM одной песни можно примерно за пятнадцать секунд, и понадобятся только часы: постучи в такт, посчитай удары, умножь на четыре. А целую библиотеку проще отдать программе — она разберёт файлы там, где они уже лежат: на компьютере или прямо в телефоне, ничего никуда не загружая и не выходя в сеть.
Считаем вручную
Включи песню и отстукивай каждый бит — тот самый пульс, под который сами собой кивают головой. Поймав ритм, посмотри на часы и посчитай удары за пятнадцать секунд. Умножь на четыре — получишь число ударов в минуту. Чтобы результат был надёжнее, считай тридцать секунд и удвой: чем дольше счёт, тем меньше значит один лишний удар в начале или в конце.
Есть одна ловушка. В большинстве композиций ровный пульс идёт сразу на нескольких уровнях, и легко попасть не на тот. Отстукивай четверти — рок-песня даст 120. Отстукивай восьмые хай-хэта, а они вдвое быстрее, — тот же отрывок даст 240. Насчёт ритма не ошибается ни один из подсчётов, просто отличаются они ровно вдвое.
Проверить себя помогает счёт по тактам. В большинстве популярных песен биты собираются по четыре, и первый в каждой четвёрке звучит с акцентом. Считай «раз-два-три-четыре, два-два-три-четыре» и следи, попадает ли акцент на твой «раз». Попадает — значит, ты отстукиваешь бит. Если акцент приходится на каждый восьмой удар, ты стучишь восьмыми, если на каждый второй — половинными. Перестройся и посчитай заново.
Проблема октавы
У этой двойки есть название: октава. Темп 85 и темп 170 описывают один и тот же ритм, просто посчитанный на разных уровнях, и часто нельзя сказать наверняка, какой из них верный.
Программы расходятся во мнениях не меньше людей. Детектор темпа обязан выбрать один уровень, и на многих треках два одинаково хороших анализатора выберут разные. Число, которое кажется завышенным или заниженным вдвое, — обычно не ошибка, а просто другая октава.
Для подбора музыки под каденс это неважно. Бегун с каденсом 170 шагов в минуту делает один шаг на каждый бит песни на 170 BPM и два шага — на каждый бит песни на 85 BPM; и так, и так шаг ложится на бит. Подбор, который принимает половинный и двойной темп, снимает эту неоднозначность сам собой — об этом и весь гид про каденс бега и BPM песни.
Программы для компьютера
Если музыка лежит на компьютере, проверенный путь — диджейская программа или менеджер фонотеки. Большинство диджейских программ определяют темп прямо при импорте трека, а во многих менеджерах фонотеки анализатор BPM либо встроен, либо ставится плагином. Большинство из них умеет записывать результат обратно в теги файла, так что дальше число едет вместе с ним.
На компьютере это работает хорошо. Но компьютер должен быть под рукой, результат нужно экспортировать или синхронизировать с тем устройством, которое играет музыку, а теги успевают устареть: добавил на телефоне папку с новой музыкой — и до следующего анализа и синхронизации у новых песен не будет BPM. Если коллекция всё время пополняется, постоянный анализ и синхронизация превращаются в рутину, которую вечно откладываешь.
На телефоне, офлайн, с «Под бит»
Другой путь — разбирать файлы прямо на том устройстве, где они играют. Так работает «Под бит» (BPM Companion) на Android: ты показываешь приложению свои папки с музыкой, а дальше оно действует в два этапа.
Быстрый проход за секунды даёт каждой песне примерный темп, так что свежей библиотекой можно пользоваться почти сразу. Медленный проход — это нейросетевой бит-трекер, трансформер «Beat This!»: он прослушивает трек целиком и находит каждый бит и каждую сильную долю. Работает он в фоне, экономно расходует батарею, и каждой песне нужен лишь один раз — результат сохраняется. Он же разрешает вопрос об октаве, на котором быстрый проход иногда ошибается, так что между двумя этапами BPM песни может измениться сам собой.
Приложение читает привычные локальные форматы: MP3, AAC/M4A, FLAC, OGG/Opus, WAV — а ещё файлы WebM/Opus, в виде которых часто сохраняется скачанное с YouTube, нередко под обманчивым именем .mp3. Файлы с DRM прочитать нельзя.
У каждого определённого темпа есть оценка уверенности, а настройка «Минимальная уверенность» прячет результаты, в которых трекер сомневается, — чтобы очередь не строилась на них. Разрешения на доступ в интернет у приложения нет вообще, так что за всё это время с телефона ничего не уходит.
Дальше из этих чисел собирается очередь под каденс — шаги в минуту на пробежке или обороты педалей на велосипеде. Велосипедную сторону разбирает гид про каденс на велосипеде, а таблицы каденса (на английском) показывают, какие темпы подходят под заданный каденс.
Почему офлайн важен
Первая причина очевидна — приватность. Музыкальные файлы говорят о человеке очень многое, и анализатор, который отправляет их на сервер, заодно заводит у себя копию твоей библиотеки. У того, кто вообще не выходит в сеть, такой возможности нет.
Есть и чисто практические доводы. Анализ, которому нужен сервер, встаёт в самолёте, в туннеле и на лесной тропе — там, где плейлист нужнее всего. И аккаунт заводить не приходится: на другом конце просто нет ничего, куда можно было бы войти.
А ещё есть причина, которая закрывает вопрос до всякого разговора о приватности. Стриминговые сервисы не дают сторонним приложениям слышать звук вообще. Приложение видит название играющего трека, но до самого звука не дотягивается, а без звука темп не определить. Поэтому любой анализатор темпа — на компьютере или на телефоне — работает с файлами, которые у тебя на руках, и поэтому приложения, подбирающие музыку под темп либо приносят свой каталог, либо берут твой.
Если твоя музыка уже лежит на телефоне, «Под бит» определяет BPM всех песен прямо на устройстве, без сети, и собирает из них очередь под твой каденс.