VST-Instrumente (Beispiele)

MIDI-Steuerung
(MIDI/
MIDI to CV, Control/Keyboard)

Kernstück der MIDI-Steuerung ist das "MIDI to CV"-Modul: Hierdurch lassen sich MIDI-Signale in (virtuelle) Spannungswerte umwandeln, die dann die anderen (virtuell) spannungsgesteuerten Module steuern.

Pro Container darf nur ein "MIDI to CV"-Modul sein.

 

Die grundlegende Struktur einer MIDI-Steuerung sähe wie folgt aus:


Struktur einer MIDI-Steuerung
grundlegende MIDI-Steuerung

Einstellungen des "MIDI to CV"-Moduls:

  • Channel = entweder alle MIDI-Kanäle (all (default)) oder ein bestimmter (1-16)
  • Bend Range = Einstellung für das Pitchbend-Rad; Bereich in Halbtönen.
  • Mono Mode = Einstellung, ob man die MIDI-Daten monophon (Mono-Mode) oder polyphon gelten sollen
  • Retrigger = Einstellung, ob im Mono-Mode beim Neuanschlag einer Taste die ADSR-Hüllkurve noch mal getriggert werden soll oder nicht (= legato-Spiel)
  • Portamento Time = Einstellung der Portamentogeschwindigkeit (nur im Mono-Mode)
  • Mono Note Priority = Einstellung, welche Note beim Anschlag mehrerer Tasten zuerst ausgewertet werden soll: Off (alle Noten werden gleich behandelt), Low (tiefste Note zuerst), High (höchste Note zuerst), Last (zuletzt angeschlagene Note hat die höchste Priorität))

Subtraktive Synthese (VCO - VCF - VCA - LFO - ADSR)

Für einen einfachen polyphonen Synthesizer benötigt man einen Oszillator (VCO) und einen hüllkurvengesteuerten, über Gate ausgelösten Verstärker (VCA mit ADSR):


Grundstruktur eines polyphonen Synthesizers
synthesizer01.se1

Man kann diese Grundlage nun mit verschiedenen Features anreichern, wie z.B. mit einem zweiten Oszillator, den man gegenüber dem ersten verstimmen kann (via Control/Detuner) oder über einen zusätzlichen Regler für die Pulsweite:


Grundstruktur eines polyphonen Synthesizers mit zweitem verstimmbarem Oszillator und Pulsweitenregler
synthesizer02.se1

Will man ein Filter hinzufügen, so gibt es hier verschiedene Möglichkeiten mit verschiedenen Vor- und Nachteilen, zwischen denen es abzuwägen gilt:

Filtermodul
SV Filter
Moog
Biquad
Geschwindigkeit (CPU-sparend)
mittel
langsam
schnell
Modulationsverhalten
stabil
stabil
instabil
Qualität in den Höhen
schlecht
mittel
gut
Qualität in den Tiefen
gut
mittel
schlecht
Auswahl in Filtertypen
viele
wenige
viele
Resonanzverhalten
stabil
stabil
stabil
Klang
eher digital
eher analog
eher digital

Für einen normalen Synthesizer ist der SV Filter (State Variable Filter) eine gute Wahl, da er besonders auch in den Tiefen stabil ist und eine steilere Filterflanke besitzt als der Moog-Filter (während der Biquad-Filter nur jedes vierte Sample berechnet, wodurch Alaising-Effekte entstehen können).

Das Filter (hier das Prefab "SV Filter" unter Book Examples/Synthesis/SV Filter) wird bei der subtraktiven Synthese zwischen VCO und VCA eingesetzt und kann mit einer zusätzlichen ADSR-Hüllkurve ausgestattet werden, deren Verlauf sich auch via Modifiers/Inverter invertieren lässt. Mit Hilfe des Prefabs "Keytrack" unter Book Examples/Synthesis/Keytrack lässt sich auch die Filtergrenzfrequenz mit der Tastatur steuern:


Grundstruktur eines polyphonen Synthesizers mit zweitem verstimmbarem Oszillator und Pulsweitenregler
und einem hüllkurvengesteuerten, keytrackbarem Filter
synthesizer03.se1

Weitere typische Funktionen eines subtraktiven Synthesizers sind Möglichkeiten der Modulation über einen LFO (Niederfrequenzoszillator bis 30 Hz; via Wellenform/Oszillator einfügen und als Maximalwert für den Pitch-Slider 1,1255 einstellen, für den Minimalwert ca. -10). Dieser kann mit verschiedenen Wellenformen arbeiten und via Flow Control/Switch (1->Many) verschiedenen Quellen zugeordnet werden.


Grundstruktur eines polyphonen Synthesizers mit zweitem verstimmbarem Oszillator und Pulsweitenregler, einem hüllkurvengesteuerten, keytrackbarem Filter sowie einem umschaltbaren LFO
synthesizer04.se1

Über eine Modulationsmatrix (z.B. 3_KDL_SiMatrix-v100.zip) lässt sich der LFO mehrfach verschiedenen Quellen zuordnen (oder auch mehrere LFOs verschiedenen Quellen)

Wenn man die Slider durch "Controls/Knob" ersetzt, kann man via "BookExamples/KDL Volts2Hz" die Spannungswerte in Frequenzangaben ausgeben lassen. Gute Umrechnungsfaktoren sind:

20 Hz = 0,540568 V
20.000 Hz = 10,64385 V

Um alles übersichtlicher zu gestalten kann man die einzelnen Synthesizer-Bereiche in Container verlagern und zusätzlich auch ein "MIDI/Patch Select-" sowie ein "MIDI/MIDI Automator"-Modul und ein Controls/Controlwheel-Modul hinzufügen:


Grundstruktur eines polyphonen Synthesizers mit zweitem verstimmbarem Oszillator und Pulsweitenregler, einem hüllkurvengesteuerten, keytrackbarem Filter sowie einem LFO mit Modulationsmatrix und ModWheel, sowie Patch Select und MIDI-Automator (= Slidern können einzelnen MIDI-Funktionen zugewiesen werden)
synthesizer05.se1

 

 

 

FM-Synthese

Bei der FM-Synthese geht es darum, daß ein Oszillator in einer Reihe von Oszillatoren (meist 4 oder 6) sowohl als Carrier als auch als Modulator eingesetzt werden kann (da die Oszillatoren beide Funktionen ausüben können, werden Sie auch einfacherweise als Operator bezeichnet). Die erzeugten Klänge sind das Produkt der Seitenbänder, die bei der Modulation entstehen (wobei der Carrier für die Hüllkurve der Amplitude zuständig ist, während der Modulator für die Hüllkurve der Frequenz).

Jeder Operator besteht aus einem in weitem Bereich verstimmbaren Oszillator mit einstellbarer zeitlicher Hüllkurve:


Struktur eines Operators

Mit allen Slidern und Auswahllisten sieht ein Operator folgendermaßen aus (der Slider "Fine" (für die Pitch-Einstellung) geht zwischen den Bereichen -0,833333 bis +0,833333):


Struktur eines Operators mit allen Regelmöglichkeiten
fm_01.se1

Fasst man die Regler zusammen ergibt sich folgendes Bild:


Struktur eines Operators mit allen Regelmöglichkeiten in einem Container
fm_02.se1

Nachdem man den Operator samt seiner Regelmöglichkeiten vervierfacht hat kann man die vier Operatoren über eine Modulationsmatrix verknüpfen (diese am besten aus dem Beispiel "BookExamples/Synthesis/FM3" kopieren, sonst mit Hilfe von 6 ineinander geschalteten "Level Adj"-Modulen nachgestalten).


Schalltungsprinzip der Modulationsmatrix

Das Prinzip der Modulationsmatrix ist, daß der Operator 4 die Operatoren 3, 2 und 1 modulieren kann, der Operator 3 die Operatoren 2 und 1 und der Operator 2 kann nur den Operator 1 modulieren. Also:

4 > 3 Operator 4 (Op4) wird mit dem Phasenmodulationseingang von Operator 3 verbunden (PM OP3) 4>3 Depth steuert den Grad der Modulation  
4 > 2 Operator 4 (Op4) wird mit dem Phasenmodulationseingang von Operator 2 verbunden (PM OP2) 4>2 Depth steuert den Grad der Modulation  
4 > 1 Operator 4 (Op4) wird mit dem Phasenmodulationseingang von Operator 1 verbunden (PM OP1) 4>1 Depth steuert den Grad der Modulation  
3 > 2 Operator 3 (Op3) wird mit dem Phasenmodulationseingang von Operator 2 verbunden (PM OP2) 3>2 Depth steuert den Grad der Modulation  
3 > 1 Operator 3 (Op3) wird mit dem Phasenmodulationseingang von Operator 1 verbunden (PM OP1) 3>1 Depth steuert den Grad der Modulation  
2 > 1 Operator 2 (Op2) wird mit dem Phasenmodulationseingang von Operator 1 verbunden (PM OP1) 2>1 Depth steuert den Grad der Modulation  

In einem Mix-Modul werden alle Ausgänge der Operatoren zusammengeführt (einfach einen leeren Container nehmen, am Input alle Signale auf einen Kanal legen). Dahinter wird noch ein Hochpassfilter geschaltet, um Frequenzbänder unterhalb von 20 Hz zu verhindern (Pitch = 0,02 bei 1 Volt/kHz):


Struktur des gesamten FM-Synthesizers
fm_03.se1

 

 

Vocoder

Ein Vocoder gilt als eines der am kreativsten einsetzbaren Instrumente; mit ihm lassen sich beliebige Wellenformen "artikulieren", kann man beliebigen Klängen eine Stimme verleihen.

Im Prinzip hat der Vocoder zwei Eingänge: Carrier = das zu artikulierende Signal und Modulator = das artikulierende Signal (meist die eigene Stimme). Sowohl Carrier als auch Modulator werden über eine Filterbank in einzelne Frequenzbänder/bereiche aufgeteilt, wobei mit Hilfe von Envelope-Followern die die Amplituden der jeweiligen Modulator-Filter die Einstellungen der jeweiligen Carrier-Filter steuern, so daß das Ergebnis so klingt, als würde es mit der Stimme des Modulators sprechen.

Im einfachsten Fall ist das Carrier-Signal schon im Effektgerät eingebaut (meist eine teiltonreiche Pulsschwingung) und wird über den Modulator artikuliert.

Der typische Aufbau eines Vocoder-Kanals sähe folgendermaßen aus:


Grundsätzlicher Aufbau eines Vocoder-Kanals

Man sieht, dass sowohl Carrier als auch Modulator über die Mittenfrequenz mit gleicher Bandbreite gefiltert werden und dass das Filter des Modulators über Level Adj die Ausgangsamplitude des Carrier-Filters steuert.

Schwieriger sind die Dreh-Knöpfe zu gestalten (sie eigenen sich besser für die Bedienung des Vocoders, da man auf ihnen auch die genaue Frequenz etc ablesen kann, sind aber als zusammengesetzte Sub-Controls etwas schwieriger zu bewerkstelligen):

Ursprünglich findet man, wenn man das Modul Controls/Knob öffnet (Häkchen vor "locked" wegklicken) folgende Struktur vor:


Normale Strukturierung von Controls/Knob

Die Übersetzung zwischen den Grafik-Elementen und den Werten findet im Modul "Patch Mem - Float" statt (und dahinter das Modul "Float to Volts", das umgekehrt die Einstellungen des Drehknopfs wieder in virtuelle Spannungswerte umwandelt). Hieran setzt man an, um die drei Knöpfe für die Vocoder zu erweitern:

Beim Attack- und Decay-Drehknopf sieht es ungefähr so aus: Nach dem "Floats to Volts"-Modul wird wieder ein "Volts to Float" geschaltet, da es hier darum geht, über das nachgeschaltetete "Patch Mem - Float Out" den eingestellten Wert wieder unter dem Knopf auszugeben. Über "Float Scaler" und "Text to Float" wird eingestellt, wieviele Nullen bei der Ausgabe hinter dem Komma stehen.


Erweiterte Strukturierung von Controls/Knob für die Attack/Decay-Knöpfe

Ähnlich sieht es beim Knopf für die Filter-Bandbreite aus: Auch hier wird für die Darstellung der Werte der umgekehrte Weg über "Volts to Float", "Patch Mem - Float Out", "Float Scaler" und "Text to Float" beschritten, während über das Modul "Subtract" die Ausgabe jeweils von 10 Volt abgezogen wird (d.h.: je mehr der Knopf nach rechts gedreht wird, desto kleiner werden die Werte für die Filterbandbreite).


Erweiterte Strukturierung von Controls/Knob für den BW-Knopf

Für den Pitch-Knopf sieht es ähnlich aus: um die genaue Frequenz anzuzeigen, wird ein 3rd-Party-PlugIn benötigt, das Spannungswerte in Frequenz umwandelt (KDL Volts2Hz), danach folgt die Ausgabe wieder dem üblichen Weg ("Volts to Float", "Patch Mem - Float Out" und "Text to Float")


Erweiterte Strukturierung von Controls/Knob für den Pitch-Knopf

Um diesen einen Vocoder-Kanal zu vervielfältigen fasst man ihn am besten in einem Container zusammen und lässt die Regler und fixed Values aussen:


Inhalt des Containers für ein Vocoder-Band

Dann vervielfältigt man den Container auf beliebig viele Frequenzbänder (hier 10) und weist diesen für die Frequenz jeweils eine entsprechende Fixed Value zu (hier: 3,25; 4; 4,75; 5,5; 6,25; 7; 7,75; 8,5; 9,25, entsprechend 130, 220, 370, 620, 1050, 1760, 2400, 4500 und 8400 Hz). Die Ausgänge fasst man alle zusammen und setzt einen verstärkenden Multiplikator dahinter. Diese Struktur verlagert man wieder in einen Container, wobei die Knöpfe für Pitch, Bandwith, Attack und Decay weiter aussen bleiben:


Struktur für einen 10-Band-Vocoder (Steuerelemente sind ausserhalb des Containers)

Diese im Container "Vocoder 10" befindliche Struktur kopiert man dann (um einen Stereo-Vocoder) zu erhalten und legt an den Carrier-Eingang den über den Pitch-Knopf gesteuerten Oszillator, um die Tonhöhe festzulegen.


Struktur des kompletten Vocoders
Vocoder.se1

Um die Sprachverständlichkeit zu steigern, kann man bei allen Zisch-Lauten ein weisses Rauschen einsetzen, indem man in den Signalverlauf einen Rauschgenerator legt, der über einen Peak-Follower Signale oberhalb von 4000 Hz reagiert (durch das davorgeschalteten Hochpassfilter). Auch diese Struktur wird in einem Container ("Noise") zusammengefasst:


Struktur des Hüllkurvengesteuerten Rauschgenerators für Zischlaute

In die Gesamtstruktur würde der Noise-Pfad folgendermaßen eingebettet (2 Noise-Module, da stereo):


Struktur des kompletten Vocoders mit verbesserter Sprachverständlichkeit
Vocoder2.se1

 

Einfacher geht das alles mit 3rd-Party-Vocoder-Modulen (z.B. mit EVM Vocoder.sem von Etric van Mayer (gab es 2008 noch kostenlos; ist jetzt auf einer PayPal-Seite)), jedoch fehlt hier noch die hinzuschaltbare Noise-Funktion:


Struktur des EVM-Vocoders
EVM-Vocoder.se1

 

Sample-Player
Der Aufbau eines Sample-Players entspricht sehr der MIDI-Synthesizer-Grundstruktur, nur dass anstelle des Oszillator-Moduls das Wave Player-Modul eingesetzt wird (unter insert/input-output) sowie ein File-Auswahl-Modul (unter insert/controls/text entry).


Grundstruktur eines Sample-Players
Sample_player.se1

unter http://www.dehaupt.com/SynthEdit/DH_WavePlayer2+.htm gibt es von Dave Haupt ein erweitertes WavePlayer-Modul, das ein guter Ersatz für den SynthEdit-internen Waveplayer ist.

Ausgehend von dieser Struktur kann man ähnliche Module hinzufügen wie beim Synthesizer.

 

Granular-Synthesizer
Durch das Hinzufügen eines Granulator-Moduls von Dave Haupt lässt sich die Sample-Playerr-Grundstruktur schnell in einen Granular-Synthesizer verwandeln.
(DH_Granulator-Modul unter http://www.dehaupt.com/SynthEdit/DH_Granulator.htm)


Grundstruktur eines Granularsynthesizers
granularsynthese.se1