Всем привет.
Отчитываюсь о прогрессе обновления.
Он есть, но к сожалению не такой быстрый, по ряду причин. Но был преодолён один из самых ответственных этапов. Готов быстрый рендер волновых форм. Ниже два примера.
Давайте объясню что там происходит, так как это не очевидно само по себе.
В deflector'е следующая архитектура - это монофонический синтезатор с двумя осцилляторами и тремя LFO.
в примерах используется только один из осцилляторов.
И осцилляторы и LFO используют один и тот же набор из пяти доступных волновых форм.
И вот тут начинаются отличия от того как это устроено обычно в других синтезаторах.
Обычно осцилляторы и формы волн неразделимы. Здесь это независимые блоки. То есть осциллятор забирает форму волны из одного из пяти блоков и занимается только тем, что изменяет её частоту и амплитуду. А сама форма для него не имеет значения и её формирование - это отдельный процесс.
Так вот, в примерах всё управление идёт как раз внутри блока отвечающего за создание самой формы волны.
Как устроен такой блок. Он берёт две примитивные функции и смешивает их, на выходе получается сложная форма волны.
Примитивных функций всего 8, но в примере используется только половина.
функциям можно изменять по желанию дополнительный параметр. для каждой из них он имеет свой смысл. для меандра - это скважность, для синуса - это вертикальное смещение, для треугольника - это положение его вершины и тд. При желании этот параметр можно модулировать.
так же примитивную функцию можно подвинуть по фазе относительно второй, что позволяет точно получить нужную комбинацию, регулировать плавность перехода и биения. Смещение по фазе тоже можно модулировать.
И присутствуют два параметра отвечающих за смешивание. Это тип смешивания, и коэффициент смешивания.
Первый тип это суммирование - тут всё просто. Примитивные функции смешиваются с указанным соотношением. Проще говоря кроссфейд между двух волн.
Второй - чуть сложнее. Это комбинация во времени. Форма волны получается составлением двух функций. Одна идёт от начала периода до значения указанного в параметре коэффициент смешивания, Вторая - начиная с этой точки и до конца периода. Для примера - первая функция синус, вторая меандр. Соотношение стоит в 60%. Значит первые 60% периода выводится синус, а начиная с 60% - меандр.
В примере нет ни огибающих, ни регулирования громкости. Поэтому транзиенты такие острые и щёлкающие. Была настроена всего одна модуляция - коэффициент смешивания. С каждой новой нотой он сбрасывается в ноль, и медленно ползёт вверх пока не достигнет максимума, где и останется.
Получается подобие морфинга в классических синтезаторах, но строго на уровне самой формы. В первом примере, первой функцией всегда выступает синус, в процессе я меняю только вторую функцию и периодически меняю тип смешивания. Ну и для тех кому интересен сырой звук - он начинается со 2й минуты. и второй файл в комментариях сразу без дополнительных эффектов.
#probe8 #deflector
Post #69
472
Audio
- 🔥 11
- 👏 3
- ❤ 1
- 👍 1
- 🤯 1