Startseite>Audio-Programmierung mit Sonic Pi, Teil 3
Aus Raspberry Pi Geek 04/2019

Audio-Programmierung mit Sonic Pi, Teil 3 (Seite 2)

Eine zweite Version in Listing 4 bietet die Möglichkeit, mittels zweier Argumente die Ausführung der Funktion zu modifizieren. Die Namen der Argumente schreiben Sie direkt zu Beginn des Funktionsblocks zwischen zwei Pipe-Zeichen (siehe erste Zeile: |dauer, teiler|). Die Argumente setzen Sie dann an den entsprechenden Stellen ein (siehe Zeilen 2 und 4).

Listing 4

define :schnipser do |dauer, teiler|
  teiler.times do
    sample :perc_snap
    sleep dauer / teiler
  end
end
schnipser 1.0, 4
schnipser 1.0, 8
schnipser 1.0, 3

Eine dritte Version der Schnipser-Funktion bietet zwei weitere Verbesserungen: Die Abspielgeschwindigkeit des Samples variiert geringfügig (siehe Zeile 4). Zudem schicken wir den Klang noch durch einen Hochpassfilter, um störende tiefe Frequenzen zu entfernen (siehe Zeilen 2 und 7).

Listing 5

define :schnipser do |dauer, teiler|
 with_fx :hpf do
  teiler.times do
   sample :perc_snap, rate: rand(0.8..1.2)
   sleep dauer / teiler
  end
 end
end
live_loop :schnips_loop do
 schnipser 1.0, 4
 schnipser 1.0, 8
 schnipser 1.0, 3
 sleep 1
end

Sonic Pi merkt sich die innerhalb einer Sitzung definierten Funktionen. Sie können also benötigte Funktionsdefinitionen in einen eigenen Textbuffer schreiben und einmal zu Beginn ausführen. Zudem besteht die Möglichkeit, eigene Funktionsdefinitionen in die Datei ~/.sonic-pi/init.rb zu schreiben, die Sonic Pi bei jedem Start automatisch ausführt.

Für das Live-Coding bietet es sich an, Funktionsdefinitionen zur Laufzeit zu bearbeiten, anstatt direkt in den Live-Loops Code zu ändern – das schafft deutlich mehr Übersicht. 

Der Autor

Der Medienkünstler Pit Noack, ein Sonic-Pi-Nutzer der ersten Stunde, gibt in seinem Atelier in Hannover Programmierkurse zu Sonic Pi, Python und Processing für Laien und Profis.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 3 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
€0,99 – Kaufen
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland