D-module · синтезатор, вдохновлённый Serge Paperface 50
Двенадцать модулей и матрица соединений между ними. Из коробки модули уже связаны встроенным трактом, вдохновлённым Make Noise 0-Coast, и звучат без единого соединения; дальше тракт вы собираете сами. Полифония четыре голоса, сэмплов внутри нет, всё синтезируется. Инструмент вдохновлён Serge Paperface 50, но ничего не эмулирует: все модули свои. Всё здесь сверено с кодом плагина. Чего в нём пока нет, перечислено в последнем разделе.
Окно тянется мышью за правый нижний угол, от 960 × 560 до 2560 × 1600; матрица растёт вместе с ним без потолка. Размер и открытая вкладка запоминаются у экземпляра плагина и не едут с пресетом.
Дайте ноту. Инструмент звучит без единого соединения: внутри встроенный тракт, вдохновлённый Make Noise 0-Coast (осциллятор, умножитель волны, фолдер, фильтр и усилитель под одной огибающей), подробнее в разделе Встроенный тракт.
Откройте PATCH. По строкам матрицы идут выходы (источники), по столбцам входы (приёмники). Точка на пересечении и есть соединение, а её яркость показывает глубину.
Потяните по ячейке вверх-вниз. Это и есть глубина связи. Щелчок по пустой ячейке сразу ставит соединение на +1.00, двойной щелчок снимает.
Вернитесь на PANEL и крутите. Ручка задаёт, где вход стоит без соединения; соединение добавляется к ней. Осциллограф справа внизу показывает, что уходит из инструмента.
Тишина? Проверьте чип NORMALS в шапке: если надпись серая, встроенный тракт выключен (так открываются проекты и пресеты версий 1.1.x), и звук идёт только через ваши соединения, то есть через приёмник Out и, если в него что-то подключено, VCA. Звук пропадает и тогда, когда ваше соединение стоит на полной глубине в Out или VCA: оно целиком вытесняет встроенную связь.
Как у полумодульных синтезаторов, у D-SP есть нормали: связи, которые работают, пока вы в этот вход ничего не подключили. В матрице они видны бледными квадратными рамками. Нормали не занимают слотов: все 24 соединения остаются вашими.
| связь | глубина | зачем |
|---|---|---|
| Note → SL1 Rate | 1.00 | высота по нотам; жёсткая, см. ниже |
| Slope 1 → WM In | 1.00 | осциллятор в умножитель волны (как Overtone у 0-Coast) |
| Wave Mult → Fold In | 1.00 | умножитель в фолдер (как Multiply) |
| Slope 1 → Bal A | 1.00 | чистая сторона BALANCE (как FUND у 0-Coast) |
| Fold → Bal B | 1.00 | обогащённая сторона BALANCE (как OVRTN) |
| Balance → SVF In | 1.00 | смесь в фильтр; ручка BALANCE сводит стороны |
| SVF LP → Out | 1.00 | фильтр на выход |
| Gate → Slew In | 1.00 | нота запускает огибающую |
| Slew → VCA | 0.35 | громкость по огибающей (с запасом под аккорд) |
| Slew → SVF Cutoff | 0.50 | удар открывает и яркость, как лоупасс-гейт |
Ваше соединение вытесняет нормаль плавно. Вклад нормали = её глубина × (1 − наибольшая глубина ваших соединений в тот же вход). Только что поставленное соединение стоит на нуле, и звучит встроенное; тянете его глубину к 1.00, и ваше плавно занимает место встроенного, без щелчка. Ручка глубины соединения становится морфом «встроенное → своё», и её можно водить на сцене. Рамка нормали гаснет вместе с ней.
Высота задана жёсткой нормалью. Note → SL1 Rate не вытесняется ничем, соединения в SL1 Rate к ней прибавляются: LFO на RATE строй не собьёт. Глубину слежения задаёт ваше соединение Note → SL1 Rate: при −1.00 слежения нет (SLOPE 1 становится LFO), при 0 всё как есть, при +1.00 слежение вдвое шире.
Шапка. Чип NORMALS включает встроенный тракт (янтарная надпись означает «включён»). CLEAR снимает все ваши соединения: с нормалями остаётся встроенный тракт и звучит, без них наступает тишина. Проекты и пресеты 1.1.x открываются с выключенными нормалями: их заводской патч записан обычными соединениями и звучит ровно как раньше.
Двадцать источников на тридцать два приёмника. Одновременно можно держать до 24 соединений; когда упрётесь, счётчик CORDS в шапке мигнёт. Предел объявлен намеренно: молчаливое «жест не сработал» было бы хуже.
| жест | что делает |
|---|---|
| тяга вверх-вниз | глубина соединения, 0.006 за пиксель |
| Shift + тяга | то же вчетверо мельче |
| щелчок по пустой | поставить соединение на +1.00 |
| двойной щелчок или правая кнопка | снять соединение |
| яркость точки | сила связи; тёплый цвет для плюса, холодный для инверсии |
| кольцо вместо точки | соединение стоит, глубина ноль: связь есть, звука от неё нет |
| бледная квадратная рамка | нормаль, то есть встроенная связь; яркость показывает её вклад сейчас. Квадрат в центре означает жёсткую нормаль (высота) |
Справа карточка выбранного соединения: источник, приёмник, точная глубина ползунком и кнопка UNPLUG. Смена источника или приёмника в списках переподключает то же соединение, глубина при этом сохраняется: как будто вынули банан и воткнули в соседнее гнездо.
| строка | что даёт |
|---|---|
| Slope 1, Slope 2 | генераторы склонов: от медленной огибающей до звуковой частоты, форма от пилы вверх через треугольник до пилы вниз |
| Wave Mult | умножитель волны: чётные гармоники, кратность 2× / 4× / 8× |
| Fold | вейвфолдер: нечётные гармоники |
| Ring | кольцевой модулятор; при BIAS 100 % работает амплитудным, то есть за VCA |
| SVF LP, SVF BP, SVF HP | три выхода одного фильтра одновременно |
| Slew | ограничитель скорости (секция Smooth у SSG) |
| S&H | выборка-хранение (секция Stepped) |
| Noise | шум: белый, розовый или коричневый |
| Peak, Trough | максимум и минимум двух входов, аналоговая логика Serge |
| CV 1, CV 2 | масштабирующие процессоры: аттенювертор плюс смещение |
| Gate | ворота ноты; равны velocity, пока нота держится |
| Note | высота взятой ноты как напряжение, 1 В на октаву |
| Quant | квантователь: напряжение из Quant In, притянутое к ступеням гаммы (ручка SCALE). Вход ±1 даёт ±2 октавы; соединение в RATE на глубине 1.00 играет ровно в строю, тоникой служит сыгранная нота |
| Balance | переход между Bal A и Bal B (ручка BALANCE) с компенсацией громкости: ручка меняет тембр, а не уровень |
| Clock | импульсы клока 0 / +1 после ручки MULT; один клок на весь инструмент, все голоса видят те же удары (раздел Клок и запуск) |
У двенадцати приёмников есть своя ручка на PANEL: она задаёт, где вход стоит без соединения. У остальных двадцати ручки нет, и это не упущение: в железе это гнездо без ручки, туда можно попасть только кабелем.
SL1 Rate · SL1 Sym · SL2 Rate · SL2 Sym · WM Amount · Fold Amount · Ring Bias · SVF Cutoff · SVF Res · Slew Rate · S&H Rate · Balance
WM In · Fold In · Ring X · Ring Y · SVF In · Slew In · S&H In · CV1 In · CV2 In · Peak A · Peak B · Out · VCA · Quant In · Bal A · Bal B · Clk Rate · SL1 Trig · SL2 Trig · S&H Trig
Нужно постоянное напряжение на входе без ручки? Возьмите CV-процессор: не подключайте ничего к CV1 In, и выход CV 1 будет равен ровно ручке CV 1 OFFSET. Патчите CV 1 → Ring Y, и OFFSET стал ручкой смещения для кольца. Путь дешевле на процессор, но грубее: соединение от Gate тоже даёт константу, пока нота держится, только она равна velocity.
Диапазон у большинства ручек −1…+1: у Serge всё есть напряжение, и ручка, соединение и нота складываются на одном входе. Но ±1 не значит «нейтраль посередине»: у AMOUNT, BIAS, CUTOFF, RES и обоих RATE этот ход раскладывается в однонаправленную шкалу (проценты, герцы, миллисекунды), и край там значит «край», а не «минус». Дуга из середины стоит только там, где центр действительно нейтраль: обе SYM, SLEW SHAPE, GAIN и OFFSET у CV.
| модуль | ручка | что делает | умолчание |
|---|---|---|---|
| SLOPE 1 | RATE | частота склона: влево ниже, вправо выше; при наведении видны нота и центы («A3», «D#4 −12»), ниже 16 Гц герцы; двойной щелчок ставит заводскую частоту | 220 Гц (A3) |
| SLOPE 1 | SNAP | привязка RATE к полутонам: случайный поворот попадает на ноту, а не в расстройку; выключите для непрерывного свипа | вкл. |
| SLOPE 1 | SYM | симметрия: пила вверх ↔ треугольник ↔ пила вниз | 0.00 |
| SLOPE 1 | 1-SHOT | выключен: склон бежит по кругу; включён: ждёт удара в SL1 Trig и делает один подъём и спад (огибающая, выход 0…+1) | выкл. |
| SLOPE 2 | RATE | то же для второго генератора; из коробки никуда не подключён | 0.4 Гц |
| SLOPE 2 | SNAP | то же для второго генератора | вкл. |
| SLOPE 2 | SYM | симметрия второго | 0.00 |
| SLOPE 2 | 1-SHOT | то же для второго; удар подаётся в SL2 Trig | выкл. |
| WAVE MULT | AMOUNT | глубина умножения волны (чётные гармоники) | 30 % |
| WAVE MULT | STAGES | кратность 2× / 4× / 8×: одна, две, три ступени удвоения | 2× |
| FOLDER | AMOUNT | глубина складки (нечётные гармоники) | 35 % |
| BALANCE | BALANCE | при 0 % только чистый склон, при 100 % только обогащённый тракт; громкость держится (компенсация), меняется тембр. Модулируется соединением в Balance | 58 % |
| RING | BIAS | при 0 % кольцевая модуляция, при 100 % амплитудная | 0 % |
| FILTER | CUTOFF | срез 20 Гц…20 кГц; огибающая открывает его на каждой ноте | 317 Гц |
| FILTER | RES | добротность | 20 % |
| SLEW | RATE | общее время прохождения шкалы 0.05…500 мс; во встроенном тракте это длина огибающей | 400 мс |
| SLEW | SHAPE | делит это время: −1 быстрый подъём и долгий спад, +1 наоборот | −0.90 |
| S&H | RATE | частота выборки 0.1…100 Гц; соединение в S&H Trig выключает её, и S&H берёт значение по удару | 8 Гц |
| CLOCK | SYNC | включён: клок идёт от позиции песни в DAW; выключен: свой темп | вкл. |
| CLOCK | RATE | в SYNC доля такта 1/1…1/32; в FREE темп 10…600 BPM; показывает то, что действует сейчас | 1/4 · 120 BPM |
| CLOCK | MULT | кратность выхода /8 /6 /4 /2 x1 x2 x4 x6 x8; новая вступает на следующей доле | x1 |
| CLOCK | WIDTH | длина импульса, % периода; с клоком в Slew In это «сустейн» огибающей | 50 % |
| QUANT | SCALE | гамма квантователя: Major, Minor, Pent Maj, Pent Min, Blues, Dorian, Phrygian, Chromatic; название всегда видно под ручкой | Pent Min |
| QUANT | ROOT | тоника: Note строит лад от сыгранной ноты (едет за партией); C…B задают фиксированную тональность: какую бы ноту ни играли, случайные ноты попадают в лад трека | Note |
| NOISE | COLOR | цвет шума: White / Pink / Brown | White |
| CV 1 / CV 2 | GAIN | аттенювертор: −1 инверсия, 0 вход выключен, +1 напрямую | +1.00 |
| CV 1 / CV 2 | OFFSET | постоянное смещение | 0.00 |
| VOICE | DETUNE | размах групповой расстройки; у каждого голоса свой знак | 9.0 ct |
| MASTER | LEVEL | выходной уровень −24…+6 дБ; 0 дБ на 80 % хода, а не в центре | 0.0 дБ |
Двойной щелчок по ручке ставит её в ноль шкалы. У ручек ±1 это середина хода, у DETUNE положение «без расстройки», у LEVEL 0 дБ. Заводское значение при этом не возвращается: оно у половины ручек не нулевое.
Карточка CLOCK на PANEL управляет тактовым генератором, он один на весь инструмент. В матрице его выход занимает строку Clock: импульс 0 / +1 на каждый удар. Точка рядом с названием карточки вспыхивает на каждом ударе.
Входы запуска (SL1 Trig, SL2 Trig, S&H Trig) срабатывают на фронт вверх через +0.5. Толкать их можно чем угодно: клоком, гейтом, склоном. Шум у порога не даёт пачки ударов: порог с гистерезисом.
SLOPE 2 → 1-SHOT
Clock → SL2 Trig 1.00
Slope 2 → SVF Cutoff 0.60
Каждый удар клока открывает фильтр. MULT на x2 или x4 открывает чаще, на /2 реже; SLOPE 2 RATE задаёт длину удара.
Noise → S&H In 1.00
Clock → S&H Trig 1.00
S&H → Quant In 0.50
Quant → SL1 Rate 1.00
Та же случайная мелодия, что в разделе «Рецепты», но ноты сменяются ровно в доли песни, а не в свободных герцах.
Clock → Slew In 1.00
Клок сам ведёт встроенную огибающую, и инструмент пульсирует без единой ноты. WIDTH задаёт длительность, SLEW RATE мягкость фронтов.
Slope 2 → Clk Rate 0.30
Медленный Slope 2 то ускоряет, то замедляет клок. Снимите соединение, и клок вернётся в темп песни на ближайшей доле. Удар возврата стоит на сетке, поэтому рядом с последним свободным ударом он может лечь флэмом. Это сделано намеренно: пропуск удара дал бы дыру.
Без нот звучит один голос. Если патч использует клок или входы запуска, без нажатых нот звучит только голос 1, иначе клок, водящий огибающую, звучал бы четырьмя голосами разом, вчетверо громче. С нотами звучат голоса с нотами; отпущенная нота доигрывает хвост 3 с. Патчи без клока ведут себя как раньше.
В патче вроде Clock → Slew In хвост не затухает: голос ещё 3 с продолжает ритм на прежнем уровне, а потом гаснет за 5 мс.
Петля в DAW. Если хост заворачивает петлю посреди своего аудио-блока, удар на старте петли приходит с опозданием до одного блока (около 10 мс на 512 отсчётах), но не пропадает.
Список PRESET загружает, кнопка SAVE сохраняет под именем. Ниже разделителя в том же списке: Save as…, Delete current preset и Reveal presets folder.
Раздел FACTORY в начале списка содержит двенадцать заводских звуков, по три на роль. Все стоят на встроенном тракте и меняют только ручки и несколько своих соединений: откройте PATCH и посмотрите, чем звук отличается от тракта. Громкость выровнена ручкой MASTER, поэтому смена пресета на сцене не даёт скачка уровня.
| роль | пресеты |
|---|---|
| BASS | Round Bass · Fold Punch · Sub Blend |
| LEAD | Fold Lead · Ring Bell · Glass Mult |
| PAD | Slow Balance · Drift Pair · Glass Pad |
| PERC | Pluck · Noise Hat · Metal Hit |
Заводской пресет загружается «с чистого листа»: всё, чего в нём нет, возвращается к умолчаниям, а свои соединения снимаются. Удалить его из списка нельзя; сохранить изменённый можно, под своим именем.
Файлы лежат в ~/Library/Application Support/D-module/D-SP/Presets (на Windows %APPDATA%\D-module\D-SP\Presets) с расширением .dsp. В них только звук: ручки, глубины и коммутация. Вкладка и размер окна в пресет не пишутся, поэтому чужой пресет не переключит вам экран.
Имя в списке показывает, откуда пришли, а не что звучит сейчас. Тронете ручку, и имя останется прежним. Это известное упрощение.
Осциллограф справа внизу показывает выход после мастера, окно около 10 мс. Кадр привязан к восходящему переходу через ноль, поэтому волна стоит, а не ползёт; если перехода в кадре нет (тишина или постоянка), рисуется последнее окно как есть.
Note → SL2 Rate 1.00
SLOPE 1 играет по нотам встроенной связью, SLOPE 2 только вашим соединением: RATE задаёт время, а не высоту. С глубиной ровно 1.00 строй ровный.
CV 1 → VCA 1.00 (CV 1 OFFSET задаёт громкость)
Встроенный VCA открывается огибающей по ноте. Ваше соединение в VCA на полной глубине вытесняет её, и выход держит уровень, который задаёт OFFSET процессора CV 1, и ноты больше не нужны.
Noise → S&H In 1.00
S&H → Quant In 0.50
Quant → SL1 Rate 1.00
S&H выбирает случайное напряжение, квантователь ставит его на ступень гаммы (±1 октава при глубине 0.50), ноты вокруг сыгранной. Темп задаёт S&H RATE, лад задаёт SCALE. Играете под трек в определённой тональности? Поставьте ROOT на неё (например, C), и мелодия не разойдётся с треком.
Slope 2 → Balance 0.40
Медленный Slope 2 водит BALANCE: звук переливается от мягкого к складчатому, громкость при этом стоит.
Noise → S&H In 1.00
S&H → SL2 Sym −0.25
Классика Serge: шум в выборку-хранение, её ступени в любой вход. Частоту ступеней задаёт S&H RATE.
Gate → Slew In 1.00
Slew → Ring Bias
Слю сглаживает ворота ноты: SLEW RATE задаёт общее время, SHAPE делит его между атакой и спадом.
Slope 1 → SL2 Rate 0.6
Slope 2 → SL1 Rate 0.4
Оба генератора на звуковой частоте, и каждый модулирует другой. Это не вибрато, а новый тембр. Ради таких патчей инструмент и сделан.
CV 1 (offset) → Peak B
Slope 1 → Peak A
Peak выдаёт максимум двух входов. Константа на втором входе превращает его в ограничитель снизу; Trough делает то же сверху.