SynthEdit. Введение. Часть 2
Теперь немного усложним наш синтезатор. Добавьте в проект модуль Insert → Controls → List Entry и подсоедините его к Oscillator.Waveform. Это позволит менять форму волны осциллятора в любой момент.
Дальше добавляем Insert → Controls → Slider и подключим его к ADSR2.Attack. Таким же образом добавьте слайдеры и для остальных параметров: Decay, Sustain и Release. Должно получиться что-то вроде этого:
Рис. 2. Добавляем элементы управления
Ну вот, теперь уже можно худо-бедно изменять тембр звука.
Ну и, наконец, переведем наш синтезатор к разряду субтрактивных. Для этого добавим фильтр (Insert → Filters → SV Filter) и элементы управления для него. Удалим соединение от VCA.Output к Sound Out и переподключим следующим образом:
Рис. 3. Добавляем фильтр
SV Filter — это классический State Variable фильтр, он имеет четыре выхода: Low Pass (фильтр низкой частоты), Hi Pass (фильтр высокой частоты), Band Pass (полосовой фильтр) и Band Reject (режекторный фильтр, т.е. фильтр не пропускающий определенную полосу). На вход фильтра подается, собственно, фильтруемый сигнал, а также два параметра: Pitch (частота среза) и Resonance (величина резонанса в точке среза) ими-то мы и будем управлять. Добротность фильтра для Low Pass и Hi Pass режимов составляет 12 дБ/окт, а для режимов Band Pass и Band Reject — 6 дБ/окт.
Мы построили, пусть и простейший, но типичный субтрактивный синтезатор, т.е. синтезатор, который формирует конечный тембр путем вычитания из изначально богатого сигнала некоторой частотной составляющей. Но позвольте, на фильтр у нас подается не такой уж и богатый сигнал, чтобы из него еще что-то вычитать, так ведь? И именно поэтому у большинства субтрактивных (и не только) синтезаторов количество осцилляторов больше одного. Позже мы подробнее остановимся на этом моменте.
Ну а с одним задающим осциллятором можно построить, например, синтезатор баса. Что нам для этого нужно? Нужно заставить звучать осциллятор на одну-две октавы пониже, т.е. сделать некий аналог транспонирования. Эту задачу можно решить различными способами. Самый простой: добавить слайдер к Oscillator.Pitch, как на следующем рисунке:
Рис. 4. Управляем высотой сигнала
Теперь нам нужно задать другой диапазон изменения значений у слайдера, для этого в контекстном меню слайдера выбираем Automation. В появившемся окне нас интересуют два параметра: Min и Max. Установите первый в -2, а второй в 0.
Когда вы подключаете к одному входу несколько источников, синтэдит складывает все входящие сигналы (другие арифметические и логические операции с сигналами совершаются с помощью различных модулей). Именно этим свойством мы сейчас и пользуемся. Дело в том, что для удобства высота сигнала (Pitch) в синэдите переводится в напряжение по следующей формуле:

При этом 5 Вольт соответствует частоте 440 Гц. При шкале 1 вольт/октаву очень удобно транспонировать сигнал в любую сторону просто добавляя или вычитая необходимую величину. Т.е. указанный нами выше диапазон -2..0, позволяет понижать Pitch осциллятора максимум на две октавы.




спасибо!
zipp, ты не в курсе как в Синтэдите многоканальность (multi output) реализуется?
я выяснил, что от наличия Sound Out это не зависит, нашёл намёки на то что, что достаточно, чтобы в контейнере инструмента IO MOD принимал многочисленные выходы, но подтверждения этому не нашёл, и не нашёл информации о том какое максимальное количество выходных каналов Синтедит может сгенерировать
у меня демо версия пока, поэтому эмпирически проверить не могу
Очень просто реализуется. Любой экспортируемый в VST-плугин должен находится в контейнере:
С внешним миром контейнер общается через IO Mod. Можно обойтись одним IO Mod, но я предпочитаю иметь в контейнере два: один для входов, второй для выходов.
Специально вот создал пробный синт с восемью выходами:
Reaper замечательно видит все каналы (даже их названия) вот так:
Демонстрационная версия синтэдита позволяет создавать плагины только с двумя входами и двумя выходами. Реальное ограничение на количество каналов мне не известно, но вроде бы я видел какие-то синтэдитовые драммашины с 16-ю выходами.
круто, спасибо большое
кстатЕ о синтах
докфильмы
БиБиСи «Synth Britannia»
http://www.youtube.com/watch?v=WeVRYPjcVXg
или
http://vimeo.com/8606934
и «German Electronic Music History»
http://vimeo.com/7583109
Спасибо, вечером погляжу!
не в противовес тебе, zip, но пользы поcетителей для
http://corpuscul.net/2010/07/rukovodstvo-polzovatelya-sintedit-synthedit/
zipp сорри
все в порядке
я уже видел эти материалы — это вольный перевод частей книги Дэйва Хаупта и Питера Шофгаузера Synthedit: Visual VST/i Programming
Жаль, но в переводе присутствуют неточности. Было бы неплохо их устранить с автором перевода.
у меня закралось такое подозрение, попробовал мельком сравнить одну главу – не совпало, но глубже не вникал
Нет, автор молодец: он честно опробовал пример из книги и перевод делал не побуквенный. Особенно это заметно в главе о создании вокодера: по скриншотам видно, что вникал. Просто в паре мест неточности. Я тоже делал вокодер по этой англоязычной инструкции: все прекрасно работает.
Но вот некоторые главы я не узнаю вообще.
я как раз эту главу и сравнивал
скрины они свои вставили
Уважаемый, а будит ли продолжение? очень интересно.