Next: Mikrotöne über MIDI , Previous: Die rts Funktion , Up: Clamps/Common Music , Home: Allgemeine Einführung

Algorithmische Komposition mit Common Lisp

Common Musics erweiterte Streamklasse und Mikrotöne

Über die oben beschriebenen jackmidi input/output streams hinaus stellt common music auch eine eigene, bidirektionale Streamklasse <incudine-stream> zur Verfügung, mit Hilfe derer auch die Ausgabe von Mikrotönen möglich ist. Auch für diese Streamklasse existiert ein vordefiniertes Symbol *rts-out*, das für die Standardanbindung von Common Musics Ausgabefunktionen vorgesehen ist.

Im einfachsten Fall einer normalen Midiausgabe wird bei Erzeugung eines solchen Streams der jackmidi Stream/Port als Argument für den zu verwendenden Output Port mit Hilfe des Keyworts :output übergeben:

(setf *rts-out* (new incudine-stream :output *midi-out1*))

Dieser Stream wird automatisch verwendet, wenn bei den Ausgaberoutinen kein anderer Stream (mit Hilfe der Symbole :to oder to) explizit angegeben wurde. Nach der Bindung des Symbols des obigen Beispiels reicht also der folgende Ausdruck, um eine Note über diesen Stream auszugeben:

(output (new midi))

Erheblich interessanter wird es, wenn man die erweiterten Möglichkeiten eines Common Music <incudine-streams> nutzt, wie beispielsweise das channel-tuning, um auf diese Weise Mikrotöne erzeugen zu können.