Einführung in die digitale Echtzeit-Klangsynthese mit SuperCollider

Ich habe ein paar Kapitel meiner Bachelorarbeit entnommen und zu einer kleinen, achtzehnseitigen Anleitung für die Grundlagen der digitalen Klangsynthese zusammengestellt. Neben den Grundlagen der Klangsynthese, welche als Basiswissen mit jeder Klangsynthese-Software anwendbar sind, wird dieses auch praktisch als SuperCollider-Programmcode veranschaulicht. Außerdem wird kurz auf die Programmarchitektur von SuperCollider eingegangen und damit erläutert, warum sich dieses Programm so gut für die digitale Echtzeit-Klangsynthese eignet.

Prog'n'Roll

Am Ende der Anleitung wird kurz auf die Sequencing-Funktionen von SuperCollider eingegangen. Als weiterführendes Beispiel hier mal noch der dokumentierten SuperCollider-Code für einen programmierten Rock'n'Roll:

//Prog'n'Roll:
(
  var grundton = 60;    //entspricht c'
  var subdominante = 5;
  var dominante = 7;
  var noten = [0, 4, 7, 9, 10, 9, 7, 4];     //die Melodie
  var turnaround = [0, 0, 0, -2, 0, 0, 0, -2]; //Kommt ans Ende des Schemas

  //Den Grundton dazu addieren
  noten = noten + grundton;
  turnaround = turnaround + grundton;

  Pbind(  //Das Muster erstellen
    \instrument, \default, //Hier laesst sich auch \fm_synth einsetzen
	  \dur, 0.25, //Viertelnoten
	  \midinote, Pseq([ //Das 12-Takt-Bluesschema:
	    Pseq(noten, 4), //4 Takte Tonika
	    Pseq(noten + subdominante, 2),  //2 Takte Subdominante
	    Pseq(noten, 2), //2 Takte Tonika
	    Pseq(noten + dominante, 1), //1 Takt Dominante
	    Pseq(noten + subdominante, 1),  //1 Takt Subdominante
	    Pseq(noten, 1), //1 Takt Tonika
	    Pseq(turnaround + dominante, 1)], //Der Turnaround
	  inf), //Unendlich oft wiederholen
	  \amp, Pseq([0.25, 0.1, 0.2, 0.1], inf) //Untersch. Lautstaerken für Betonung
  ).play(quant:1.0) //Beginnt im naechsten Takt
)

Seite zuletzt bearbeitet am 06.05.2010 14:34 Uhr