Зачем знать темп и тональность
Темп нужен, когда вы сводите два трека в сет, подбираете барабанную петлю к готовому куску, выставляете сетку в новом проекте под уже записанный материал или ищете референс с похожим драйвом. Тональность нужна, чтобы вокал не конфликтовал с подложкой, чтобы сэмпл лёг в гармонию без резкого сдвига по высоте и чтобы переход между двумя треками не звучал фальшиво.
Отдельная история — заказная работа. Когда клиент присылает ролик с временным музыкальным подкладом и просит «что-то в таком же духе», первое, что нужно снять, — это темп и тональность референса. Дальше вы попадаете в его ощущение ритма с первой попытки.
Как инструмент считает темп
Сначала звук переводится в моно и разбивается на короткие окна. В каждом окне считается спектр, и по разнице между соседними спектрами вычисляется момент атаки — точка, где появляется новый звук. Получается дорожка из всплесков, соответствующих ударам. Затем по этой дорожке ищется период, с которым всплески повторяются: тот интервал, при котором дорожка лучше всего совпадает сама с собой, и есть длина доли. Из него получается BPM.
Метод устойчив к тому, что мешает более простым алгоритмам: он не путается от басовой линии и не привязан к громкости бочки. Но у него остаётся врождённая неоднозначность — период вдвое короче тоже подходит. Поэтому рядом с основным значением показаны половина и удвоение: выбирайте то, что совпадает с вашим счётом такта.
Как определяется тональность
Спектр раскладывается по двенадцати нотам вне зависимости от октавы, и получается профиль: сколько в треке до, сколько ре-диеза, сколько соль. Этот профиль сравнивается с эталонными профилями всех двадцати четырёх тональностей — двенадцати мажорных и двенадцати минорных. Побеждает та, с которой совпадение выше. График под результатом показывает исходное распределение: если два-три столбика заметно выше остальных, определение надёжное, если все примерно вровень — материал слишком шумный или перкуссионный, чтобы говорить о тональности.
Хуже всего метод работает на треках почти без гармонии: чистых барабанных петлях, дроне, вокале а капелла с сильной обработкой. Лучше всего — на плотном материале с явными аккордами.
Что делать с кодом Camelot
Код вида 8A или 11B — это позиция тональности на колесе, которым пользуются диджеи. Правило простое: соседние номера с той же буквой сочетаются, одинаковый номер с другой буквой — тоже. Из 8A удобно уходить в 7A, 9A и 8B. Прыжок на противоположную сторону колеса даст ощущение фальши, даже если темп совпал идеально.
Когда результату не стоит верить
- Живая запись без клика: темп плавает, инструмент покажет усреднённое значение.
- Трек со сменой темпа внутри: анализируется фрагмент, а не вся структура целиком.
- Эмбиент и дроун без выраженного ритма: уверенность будет низкой, и это видно в результатах.
- Сильно сжатый файл низкого битрейта: атаки размазаны, точность падает.
Вопросы и ответы
Какие форматы файлов поддерживаются?
MP3, WAV, FLAC, OGG, M4A и AAC — всё, что умеет проигрывать ваш браузер. Файл читается локально, ограничение по размеру зависит только от памяти устройства.
Куда загружается мой трек?
Никуда. Анализ выполняется средствами браузера на вашем устройстве, файл не передаётся на сервер и нигде не сохраняется.
Насколько точно определяется темп?
На треках с ровной ритмической сеткой — электронике, хип-хопе, поп-музыке — точность обычно совпадает с сеткой проекта. На живых записях с плавающим темпом, а также на балладах и эмбиенте результат может отличаться вдвое: инструмент показывает альтернативные значения, чтобы это было видно.
Почему инструмент показал темп в два раза больше или меньше?
Это классическая неоднозначность: 140 и 70 BPM описывают одну и ту же сетку, разница лишь в том, что считать долей. Ориентируйтесь на то, как вы сами отсчитываете такт, и выбирайте из предложенных вариантов.
Что такое обозначение вида 8A или 11B?
Это код по колесу Camelot — системе, которой пользуются диджеи для гармоничного сведения. Треки с соседними номерами и одинаковой буквой звучат вместе без конфликта тональностей.