УРА!!!! Всё работает так как я и хотел. Теперь можно наворачивать это безобразие до потери ресурсов CPU!!!!!
Итак, что сделано:
На первой картинке вы видите сам проект Bidule.
HID Data Extractor для того, чтобы при нажатии на кнопку клавиатуры Bidule получал миди сообщение.
Note Filter отфильтровывает все миди ноты, кроме тех, которые обозначены. Я оставил ноту, соответствующую левой кнопке alt на клавиатуре.
Tap Tempo ясен из названия, формирует сигнал MidiClock на основании четырёх нажатий tap.
Clock просто для того, чтобы убедиться, что темп меняется, хотя и на предыдущем ноде это можно увидеть.
Network Session для ввода в систему миди сообщений с iPad, у пользователей Windows будет по-другому, но суть та же.
Analog Drum для тестирования и настройки. Так легко понять что происходит в системе. Вместе с предыдущими двумя нодами необязателен.
Sync Tap Delay (далее Effect) есть СЕРДЦЕ всего. Сюда Вы подключаете свой аудио сигнал. Effect истино стерео. Можно обрабатывать два разных моно сигнала. Не забудьте включить синхронизацию с Tap Tempo.
Теперь, собственно самое интересное — Effect (см. картинку 2)
60000 — константа в которой выставлено количество милисекунд в минуте
Sinc Extractor — преобразовывает сигнал MidiClock в виртуальные аналоговые сигналы для управления аудио модулями. Второй выход выдаёт наш искомый BPM.
/ — Binary Operator в котором мы делим милисекунды на BPM и получаем длительность одной четверти в милисекундах.
ms to samp — понятно из названия, преобразовывает значение милисек. в семплы.
x*2 — Function, удваивающий значение семплов (математическая операция может быть любая).
Delay — ясно из названия. Вот тут, попробуйте самостоятельно разобраться в роутинге, а я подскажу. Рассмотрим только левый канал. Здесь два Delay: LL и LR. Аудио сигнал поступает в оба Delay одновременно, но на выходе сигнал с LR появляется через четверть после того как пришёл прямой, а на выходе с LL он появляется на половинку позже. И тут момент, на который я потратил больше всего времени, пока не придумал этот простейший ход. С LL задержанный на половинку сигнал возвращается в LR где снова задерживается на четверть. Таким образом мы получаем в правом канале уже задержку в три четверти. Одновременно сигнал с LL поступает на Feedback, с ЛЕВОГО канала которого он с ослаблением поступает снова в LL где задерживается ещё на половину и мы получаем ослабленную четвёртую четверть. А далее всё повторяется по кругу с ослаблением.
Feedback — ну тут уже всё понятно.
Dry/Wet — тоже всё понятно.
И знаете что, звучит это всё просто здорово. Мало я знаю плагинов ping-pong Delay, с таким длинным хвостом и чистым звучанием.
А далее, можно дополнять модуляцию, сатурацию, EQ и всё что Вам понравится по вкусу.
Лично я продолжу эксперименты далее.
Будут вопросы, с удовольствием отвечу.