Статьи:

Профиль:

Создание простого синтезатора в синтэдит — 2


В данном уроке мы продолжим вместе создавать с нуля наш собственный вст плагин. Перед прочтением этой статьи рекомендуется ознакомится с первой статьёй этого цикла: «Создание простого синтезатора в синтэдит — 1«. Как минимум потому что в ней описывается создания примитивного синтезатора, наличие которого нам потребуется для работы в этом уроке. Итак, откройте проект, созданный Вами во время первого урока, он будет выглядеть примерно так:

Синтэдит
Руководство пользователя
Описание модулей
Описание модулей 2
Создание синтезатора 1
Создание синтезатора 2
Создание синтезатора 3
Единицы измерения
Оптимизация
синтез методом фазовых искажений
FM синтез
Создание Модулей
Создание фильтра
Создание дилея
Создание ревербератора
Создание флангера и хоруса
Создание эквалайзера
Создание компрессора
Создание вокодера

Untitled-101

Кроме созданных нами в прошлом уроке модулей регуляторов, осцилятора, фильтра и выхода, на изображении Выше мы видим ещё один модуль VCA , предназначенный для контроля тембра и тона генерируемого звука. Можете добавить этот модуль, также как и регулятор уровня громкости в Ваш проект.

В данном уроке мы дополним структуру нашего проекта, добавим новые модули, с помощью которых мы сможем игать на нашем синтезаторе с клавиатуры. Как виртуальной, так и с внешнего миди контроллера/клавиатуры (см. настройки программы).

Для начала давайте создадим генератор огибающих. Удалите модуль-регулятор параметра volume модуля VCA . Огибающие позволяют задавать форму сигнала, подробнее. Создайте новый модуль — генератор огибающих (envelope) Insert->Waveform->ADSR2. Подсоедините единственный выход этого модуля ко входу «Громкость» (Volume) модуля VCA . Откройте настройки модуля АСПЗ огибающих.

Untitled-111

В появившимся окне откройте свойства и задайте отличные от стандартных время атаки, спада, плато, затухания.

огибающие

Справка:

  • Атака (eng.: Attack, A) — период начального нарастания громкости сигнала.
  • Спад (eng.: Decay, D) — период ослабления сигнала после начального нарастания.
  • Плато (eng.: Sustain, S) — период постоянной силы сигнала.
  • Затухание (eng.: Release, R) — период окончательного затухания сигнала.

Закройте окно модуля огибающих и нажмите на кнопку воспроизведения. Обратите внимание на то как изменяется громкость звука, это будет происходить при каждом получении миди сообщения о нажатии пользователем определённой клавиши на клавиатуре синтезатора.

Давайте теперь создадим контроллеры для параметров Атаки, спада, плато, затухания огибающих. Создаёте четыре новых регулятора (слайдера) и подсоедините их к соответствующим входам модуля ADSR2: Attack (Атака), Decay (Спад), Sustain (Плато) и Release (Затухание). Для того чтобы они выглядели более приятно для глаза — квантуйте… тьфу ты, отцентрируйте их к сетке секвенсора рабочей области, дав следующую команду: Edit->Snap to Grid . Наличие в синтезаторе огибающих, возможности их контроля — очень важно для того чтобы пользователь мог заниматься звуковым дизайном, формировать собственные тембры инструментов.

Untitled-121

Также Вы можете обратить внимание на то что регулятор затухания не влияет на звучание инструмента — не волнуйтесь, мы вернёмся к этому позже.

Генерато огибающих также может быть использован для контроля высоты среза фильтров. Давайте копируем наш генератор огибающих и его регуляторы для того чтобы сделать это.

Untitled-131

Выделите генератор огибающих и его регуляторы мышкой, копируйте (команда ctrl + c) и вставьте (команда ctrl + v), разместите копию рядом с VCF модулем. Подсоедините выход модуля «огибающие» ( ADSR2 ) к входу «высота» (pitch) модуля фильтра (filter). Нажмите на кнопку воспроизведения несколько раз. Попробуйте изменить значения регуляторов обоих огибающих.

Теперь, после подсоединения модуля огибающих, самое время добавить клавиатуру. Выполните следующую команду: Insert->Controls->Keyboard2. После нажатия на одну из клавиш клавиатуры, модуль посылает миди-подобное сообщение о данном действии к генератору волн (осцилятору).  Осцилятор генерирует волну, период/высота которой соответствует нажатой пользователем клавиши/ноте.

Untitled-141

Давайте подсоединим нашу клавиатуру к осцилятору. Для начала удалите регулятор, подключённый к входу «высота» (pitch) модуля VCO. Мы больше не нуждаемся в этом регуляторе, так как высота звука будет регулироваться модулем «MIDI to CV «.

Untitled-151

Подсоедините выход «высота» (Pitch) модуля клавиатуры2  ко входу «высота» (Pitch) модуля осцилятора.

Однако это ещё не всё. Нам нужно подсоединить  выходы Pitch и Gate модуля клавиатуры к соответствующим входам Pitch и Gate модуля генератора огибающих.

Untitled-161

Нажмите на кнопку воспроизведения,  понажимайте по клавишам клавиатуры курсором мыши.

Когда Вы нажимаете на клавишу клавиатуры модуль выполняет два действия:

  1. Задаёт высоту волны, которая генеририруется осцилятором.
  2. Перезагружает/обнуляет огибающие, после окончания нажатия на клавишу.

Также, теперь регулятор огибающей «затухание» (Release) работает корректно.

Большинство современных синтезаторов позволяют сохранять полученные пользователем тембы, а точнее значения огибающих, осцилятора, фильтра и прочих элементов синтезатора. В программе синтэдит также есть возможность работы с установками (пресетами), всего имеется возможность сохранить 128 установок, чего вполне достаточно. Также синтэдит поддерживает работу с миди данными автоматизации всех параметров (изменения значения в реальном времени), что позволяет ассоциировать определённый миди контроллер Вашего внешнего устройства с определённым контроллером программы синтэдит. Эти функции выполняются с помощью модуля Patch Automator. Добавьте его в проект Insert, MIDI, Patch Automator).

Untitled-171

Синие треугольники позволяют произвести выбор установки, Вы можете дать каждой установке своё собственное имя. Кнопка «файл» (FILE) предназначена для сохранения и загрузки файлов с жёсткого диска. Кнопка «копирование» (copy)  предназначена для копирования установки на другие слоты.

Ещё один способ заставить синтезатор играть — это использовать стандартные миди файлы и модуль миди проигрывателя.

Untitled-181

Добавьте в проект новый модуль миди проигрывателя (Insert->MIDI->MIDI Player)  рядом с модулем настройки установок и автоматизации. Подсоедините миди выход (MIDI out) проигрывателя к миди входу (MIDI in) модуля автоматизации. Откройте свойства модуля «миди проигрыватель» и откройте миди файл (создайте в любой виртуальной студии или скачайте из интернета). Миди файлы имеют расширения .mid и .midi (нет разницы) и, чтобы программа синтэдит их видела, должны находиться в папке программы «SynthEdit/MIDI/».

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

Также, если у Вас есть внешнее устройство: миди контроллер или миди клавиатура, имеет смысл поиграть на синтезаторе с ней. Мы уже добавили в проект модуль клавиатуры2. Подсоедините Ваш внешний контроллер к компьютеру, убедитесь в настройках программы то что оно распознано.

Добавьте в проект новый модуль : Insert->MIDI->MIDI In. Подсоедините его выход к миди входу модуля автоматизации.

Untitled-191

Нажмите на кнопку воспроизведения и попробуйте поиграть на вашем внешнем устройстве.

Вы должны быть залогинены для комментирования.