Genauso wie es dich steuern lässt, welche Noten du erzeugst und welche Samples du abspielst, bietet dir Sonic Pi eine ganzen Bandbreite von Optionen, um die Klänge zu gestalten und zu steuern. Wir werden viele davon in diesem Tutorial behandeln, und für jede Option gibt es eine ausführliche Dokumentation im Hilfe-Fenster. Für den Moment werden wir uns zunächst zwei der nützlichsten ansehen: Amplitude (Lautstärke) und Pan (Panorama). Aber vorher will ich kurz erklären, was Optionen eigentlich sind.
Die Synths von Sonic Pi lassen sich über verschiedene Optionen (oder kurz: Opts) verändern. Opts sind Regler, die an play
oder sample
übergeben werden; sie verändern und steuern unterschiedliche Aspekte der Klänge, die du hörst. Jeder Synth hat seinen eigenen Satz Opts, um den Klang fein einzustellen. Es gibt auch Opts, die für viele Klänge identisch sind, z.B. amp:
und Hüllkurven-Opts (die wir in einer anderen Sektion besprechen).
Opts bestehen aus zwei Teilen, ihrem Namen (der Name des Reglers) und ihrem Wert (der Wert, auf den du den Regler setzten möchtest). Zum Beispiel könntest du eine Option mit dem Namen cheese:
haben, der du den Wert 1
geben möchtest.
Opts werden den Aufrufen von play
und sample
nach einem Komma ,
übergeben, dem der Name der Option folgt, etwa amp:
(vergiss den Doppelpunkt :
nicht), dann eine Leerstelle und schließlich der Wert der Option. Zum Beispiel:
play 50, cheese: 1
(cheese:
ist keine gültige Option, wir nehmen sie hier nur als Beispiel).
Du kannst mehrere Opts hintereinander schreiben, indem du sie jeweils mit einem weiteren Komma abtrennst:
play 50, cheese: 1, beans: 0.5
Die Reihenfolge der Opts spielt keine Rolle, so dass die folgende Zeile hätte dasselbe Ergebnis:
play 50, beans: 0.5, cheese: 1
Opts, die der Synth nicht kennt, ignoriert er einfach. (wie cheese
und beans
, die ja nun wirklich alberne Namen für Optionen sind!)
Wenn du aus Versehen zweimal dieselbe Opt mit unterschiedlichen Werten benutzt, gewinnt die letzte. Im folgenden Beispiel wird beans
den Wert 2 bekommen und nicht 0.5:
play 50, beans: 0.5, cheese: 3, eggs: 0.1, beans: 2
Viele Dinge in Sonic Pi akzeptieren Optionen, also verbringe ein wenig Zeit damit zu lernen, wie du sie einsetzen kannst, und du wirst bald startklar sein! Spielen wir mal mit unserer ersten Opt: amp:
.
Die Amplitude ist wie der Computer die Lautheit eines Klangs repräsentiert. Eine hohe Amplitude bringt einen lauten Klang hervor, und eine niedrige Amplitude ergibt einen leisen Klang. So wie Sonic Pi Zahlen dazu benutzt, um Zeit und Töne darzustellen, bildet es auch die Lautstärke mit Hilfe von Zahlen ab. Eine Amplitude von 0 bedeutet Stille (du wirst nichts hören), eine Amplitude von 1 steht für normale Lautstärke. Du kannst die Amplitude aufdrehen auf 2, 10, 100. Aber Vorsicht: Wenn die Amplitude aller gemeinsamen Klänge zu hoch wird, setzt Sonic Pi einen so genannten Kompressor ein, der sie zusammen quetscht, damit die Klänge nicht zu laut für dein Ohr werden. Oft klingt das dann matschig und schräg. Verwende also lieber niedrige Amplituden, das heißt im Bereich zwischen 0 und 0.5, um Kompression zu verhindern.
Um die Amplitude eines Klangs zu ändern, setze die Opt amp:
ein. Um zum Beispiel mit halber Amplitude abzuspielen übergebe 0.5:
play 60, amp: 0.5
Für die doppelte Amplitude übergebe 2:
play 60, amp: 2
Die amp:
-Opt beeinflusst nur den Aufruf von play
, mit der sie unmittelbar zusammenhängt. Das heißt, in dem folgenden Beispiel wird der erste Aufruf von play
mit halber Lautstärke gespielt und der zweite wieder mit der Standardlautstärke (1):
play 60, amp: 0.5
sleep 0.5
play 65
Natürlich kannst du für jeden Aufruf von play
andere Werte für amp:
festlegen:
play 50, amp: 0.1
sleep 0.25
play 55, amp: 0.2
sleep 0.25
play 57, amp: 0.4
sleep 0.25
play 62, amp: 1
Eine weitere interessante Opt ist pan:
. Ihr Wert gibt an, aus welcher Richtung der Klang kommt, wenn wir in Stereo hören. Panning nach links bedeutet, dass du denKlang aus dem linken Lautsprecher und Panning nach rechts, dass du ihn aus dem rechten Lautsprecher hörst. Für unsere Werte benutzen wir -1 , um den Klang ganz nach links zu schieben, 0 steht für die Mitte und mit 1 schieben wir den Klang ganz nach rechts. Natürlich können wir jeden Wert zwischen -1 und 1 verwenden, um die Klänge exakt im Stereofeld zu positionieren.
Lasst uns einen Beep nur aus dem linken Lautsprecher abspielen:
play 60, pan: -1
Jetzt aus dem rechten Lautsprecher:
play 60, pan: 1
Nun wollen wir den Klang aus der Mitte zwischen beiden Lautsprechern herauskommen lassen (die Standardposition):
play 60, pan: 0
Jetzt leg’ einfach los und verändere die Amplitude und das Panning deiner Klänge!