Коллеги, возникла такая задача, представляющая пока чисто академический интерес. Тема в разделе рипера, потому как интересно решить задачу именно средствами рипера (большей частью хотя бы). Впрочем, если кто-то предложит решение, например, средствами реактора или иного конструктора, тоже буду благодарен.
Есть некий [почти] статичный сигнал (форум музыкальный, пусть это будет волынка, например, дующая одну ноту). Необходимо детектирование этого сигнала в окружающем шуме (пусть не шум, пусть музыкальная композиция) и по появлению этого сигнала должно генерироваться midi-сообщение (да что угодно, но midi привычнее)
Я на скорую руку собрал кривую модель, в которой параметриком, умеющим строить гармоники от заданной частоты задрал основной тон и гармоники на +18 dB от основного тона нашей «волынки», взял дельту этого сигнала от суммы шума и волынки, настроил детектор reagate достаточно узкой полосой с максимальным RMS на генерацию миди-сигнала по срабатыванию.
Но это всё фигня и коряво, так как при возрастании уровня шума плюс минус в той же полосе рано или поздно гейт тоже срабатывает.
Задумал сделать слепок сигнала «волынки» при помощи ReaFir и тут к стыду своему застрял, потому как вообще не пойму, как в этом плагине динамическая часть прикручена с снятому «слепку»
Но это одна из идей, возможно есть более симпатичное решение или оно даже уже давно реализовано.
По хорошему надо бы написать на JS, но сначала хочется смоделировать всё имеющимися средствами алгоритм работы.
Спасибо, тем, кто дочитал)
Есть некий [почти] статичный сигнал (форум музыкальный, пусть это будет волынка, например, дующая одну ноту). Необходимо детектирование этого сигнала в окружающем шуме (пусть не шум, пусть музыкальная композиция) и по появлению этого сигнала должно генерироваться midi-сообщение (да что угодно, но midi привычнее)
Я на скорую руку собрал кривую модель, в которой параметриком, умеющим строить гармоники от заданной частоты задрал основной тон и гармоники на +18 dB от основного тона нашей «волынки», взял дельту этого сигнала от суммы шума и волынки, настроил детектор reagate достаточно узкой полосой с максимальным RMS на генерацию миди-сигнала по срабатыванию.
Но это всё фигня и коряво, так как при возрастании уровня шума плюс минус в той же полосе рано или поздно гейт тоже срабатывает.
Задумал сделать слепок сигнала «волынки» при помощи ReaFir и тут к стыду своему застрял, потому как вообще не пойму, как в этом плагине динамическая часть прикручена с снятому «слепку»
Но это одна из идей, возможно есть более симпатичное решение или оно даже уже давно реализовано.
По хорошему надо бы написать на JS, но сначала хочется смоделировать всё имеющимися средствами алгоритм работы.
Спасибо, тем, кто дочитал)
Последнее редактирование: