Генератор точных маркеров для порезки барабанов

  • Автор темы Автор темы Rst7
  • Дата начала Дата начала

Rst7

Well-Known Member
10 Янв 2010
2.167
2.161
113
50
Kharkiv-city
На самом деле изначально эта утилитка была написана мной для совсем других целей (это был детектор импульсов зондирования в гидроакустическом локаторе), но недавно попалась мне на глаза в собственных закромах, и я ее малость подправил для использования в одной довольно часто встречающейся ситуации.

Дело в том, что расстановка маркеров (хитпоинтов) - довольно трудоемкий процесс. Алгоритмы автоматической расстановки в том же Кубейсе довольно часто ошибаются (имеется в виду смещение по времени) и требуют ручного редактирования, на что иногда уходит масса времени.

Есть один хороший способ определения точного времени прихода искомого сигнала при помощи вычисления корреляции с образцом. Что, собственно говоря, и делает предлагаемая утилита.

Собственно весь процесс состоит из двух этапов.

Сначала генерация образца. Она выполняется просто просмотром входного файла, накатыванием на него банального гейта и усреднением всех таких найденных образов. Давите кнопку Load, выбираете файл. Затем выбираете нужный канал (левый или правый). Потом давите кнопку Analyze. Затем, перемещая скроллбар справа от осциллограммы (это уровень триггера, он же синяя горизонтальная линия), выбираете наиболее вменяемый результат по созданию образца. Хороший результат - это когда от небольшого смещения триггера картинка образца в целом не меняется. Ну и вообще, если перед этим вы на исходный файл в DAW смотрели, то примерно понимаете, как должен образец выглядеть.

Вот пример бочки:
ComputeRef.png

Малый:
ComputeRef2.png


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

Затем скроллбарами Left Trim и Right Trim выбираете границы образца (это вертикальные красные линии). Хороший результат получается, когда выбран один первый период сигнала (по переходам через 0). Причем, положение Left Trim есть смысл выбирать на чуть-чуть позже, чем сигнал образца отходит от нуля (хорошо видно на бочке).

Второй этап - собственно согласованная фильтрация (считаем корреляцию между входным файлом и образцом) и поиск максимумов уже после этого. Давите на кнопку Generate и в каталог, откуда был прочитан исходный файл, генерируется файл с маркерами в местах максимума корреляционной функции. Имя у него будет "имявходногофайла_gate0.wav" или "имявходногофайла_gate1.wav" в зависимости от выбранного канала.

Затем новый файл импортируете в DAW (с того же места, где был исходный файл). И вуаля:
result1.png result2.png result3.png

Теперь эти файлы можно использовать как исходники для генерации маркеров в DAW. А еще есть одно применение - использование их для точного управления гейтами - просто включаете на гейте сайдчейн и направляете ему на этот вход сигнал с трека маркеров.

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

PS Возможно, что я изобрел велосипед, но пару-тройку раз я пробовал найти гейты с подобной точностью - и все неудачно. Так что сделал свой. Ну а за пару-тройку десятков раз ручной коррекции положения маркеров в Кубейсе желание сделать это только усугублялось.

PPS Доделывать я ничего не буду, все as is, если кто-то захочет поднять упавшее знамя (что-то исправить, доделать, etc) - исходники я выдам.
 

Вложения

Последнее редактирование:

Сейчас просматривают