Ein etwas komplexerer Generator, den man allerdings auch aus einfachen
oscil-generatoren aufbauen könnte, ist foscil oder, in
der interpolierenden Variante foscili. Der Grund, warum dieser
Generator als eigener Generator erscheint, liegt darin, daß er,
quasi hart kodiert, viel schneller arbeiten kann, als ein
zusammengesetztes CSound Instrument. Abbildung 3.2 zeigt den
Aufbau des foscil Generators als CSound Instrument.
Der foscil-Generator benötigt seine Eingangswerte in der
Reihenfolge Amplitude, Frequenz, Carrierfrequenz, Modulationsfrequenz,
Modulationsindex, Wellenform (normalerweise Sinus)
Das Klangsyntheseverfahren, bei dem ein Oszillator (Modulator), der im Audiobereich einen anderen Oszillator(Carrier) in der Frequenz moduliert, heißt übrigens Frequenzmodulation oder kurz FM. Die musikalische Verwendbarkeit von FM nebst der zugehörigen Theorie ist in den 60er/70er Jahren von John Chowning entwickelt worden und verhalf der Firma YAMAHA zu ihrem Durchbruch mit dem DX7 Synthesizer.
Der foscil Generator kann dabei als Grundbaustein für
wesentlich komplexere FM-Instrumente dienen.
Über die Theorie der FM werden wir noch im Zusammenhang mit Waveshaping sprechen, hier zunächst ein einfaches Beispiel:
; fm1.orc Demonstration von einfacher FM (foscil)
sr = 44100 ; samplerate 44.1 kHz
kr = 441 ; Kontrollrate, 441 Hz
ksmps = 100 ; Anzahl Audiosamples pro Kontrollsample
nchnls = 1 ; Mono
instr 1
iamp = p4
ifreq = p5
icfreq = p6
imfreq = p7
imindex = p8
asig foscil iamp,ifreq,icfreq,imfreq,imindex,1
out asig
endin
; fm1.sco Demonstration von einfacher FM (foscil)
f 1 0 4097 10 1 ; viele Stuetzwerte
; instr start dauer ampl freq cfreq mfreq mindex
;variation des Modulationsindex
i 1 0 2 20000 100 1 1.5 1
i 1 3 2 20000 100 1 1.5 2
i 1 6 2 20000 100 1 1.5 3
;variation der Modulationsfrequenz
i 1 9 2 20000 100 1 1.5 3
i 1 12 2 20000 100 1 1.8 3
i 1 15 2 20000 100 1 2.5 3
;variation von Modulationsfrequenz und Index
i 1 18 2 20000 100 1 1.5 2
i 1 21 2 20000 100 1 1.8 3
i 1 24 2 20000 100 1 2.5 4
e