Rosegarden – hast du Töne?

Rose_Haupt

Gestern habe ich darüber berichtet, wie man "JACK" zum Laufen bringt. Jack ist meist aber nur Mittel zum Zweck. In meinem Fall sollte eigentlich der Sequenzer "Rosegarden" ausprobiert werden. Ich war ja gestern ganz froh, als Rosegarden endlich lief, den Anschluss an Jack schaffte und keine Fehler mehr meldete. Dann habe ich aber (leider) auch noch den Versuch unternommen, Rosegarden und meiner Audigy-Soundkarte ein paar Midi-Töne zu entlocken. Das misslang im ersten Anlauf völlig - Rosegarden blieb stumm und gab trotz korrekt konfiguriertem Jack keine Midi-Töne von sich. Interessanterweise konnte der Datenstrom eines SW-Synthesizers, der mit JackEQ auf Rosegarden umgelenkt wurde, sehr wohl mit lautstarkem Resultat verarbeitet werden. Ursachen für mein Scheitern mit Midi waren einerseits meine Unerfahrenheit mit Audio-Devices, aber auch etwas missverständliche Einstellungsdialoge von Rosegarden.

Rosegarden bietet im Bereich der Midi-Konfiguration einen Dialog an, mit dem das Midi-Gerät gewählt werden kann und mit dem auch die zugehörigen Bänke verwaltet werden. Dieser Dialog wird durch einen weiteren zum "Laden" einer Soundfont-Bank ergänzt. Hier begann meine Kette der Mißverständnisse: Der Rosegarden-Dialog zur Verwaltung der Midi-Geräte lädt nämlich keineswegs Soundfonts auf die Karte (s.u.).

Im Internet entdeckte ich übrigens, dass eine Reihe von Leuten ein ähnlich stummes Rosegarden vorgefunden hatten wie ich selbst. Die erhielten dann von bekümmerten Zeitgenossen viele Ratschläge, von denen die meisten aber am Kern des Problems vorbeigingen. U.a. fand ich die Anmerkung, dass ein SW-Syntheziser zwingend erforderlich sei. Das ist schlicht falsch. Die "Audigy 2"-Karte, die ich einsetze, ist ein vollwertiger Soundprozessor, der unter dem emu10k1-Modul und Alsa sehr wohl mit Midi-Vorgaben umgehen kann. Nachfolgende Ausführungen sollen helfen, meine elementaren Fehler zu vermeiden. Der Reihe nach:

Midi
Midi ist nach meinem Verständnis ein Protokoll, das einem Klang-Generator (z.B. einem Synthesizer oder einer Sounkarte) vorgibt, mit welcher zeitlichen Charakteristik, Lautstärke und in welcher Tonhöhe er Töne erzeugen soll. Die Vorgabe kann über Software, aber auch über Midi-fähige "eingabe"-Instrumente udn Tastaturen erfolgen. Die klangliche Färbung liegt dagegen beim Sounderzeuger/Schallumwandler. Im Fall einer modernen Soundkarte werden zur Vorgabe instrumentaler Klangfarben sog. Soundfonts auf die Karte "geladen". Diese steuern den Syntheziser der Karte so, dass er eine Reihe von klanglichen Varianten nach einem bestimmten Nummernschema (Soundbänke und Kanäle) anbieten kann. Das Midi-Protokoll erlaubt dann z.B. einer Sequenzer-SW, diese "instrumentalen" Klangfarben des Midi-Geräts gezielt einzusetzen.

Soundfontdateien für die Audiokarte
Damit die Midi-Devices auf einer Soundkarte (meist gibt es hier mehrere) überhaupt Töne produzieren, wenn sie von einer Software über das Midi-Protokoll und den Soundkartentreiber angesprochen werden, muss also zuvor zwingend eine Soundfont-Datei (wie z.B. CT4MGM.SF2) auf die Soundkarte (in meinem Fall eine Audigy 2) geladen werden. Soundfontdateien gehorchen normierten Formaten. Man findet Soundfont-Dateien im Internet oder auch auf Treiber-CDs für die jeweilige Soundkarte.

Laden von Soundfontdateien auf die Audiokarte
Zum Laden von sog. "sf2"-Soundfontdateien auf eine Audigy gibt es unter Linux das Programm "/usr/bin/asfxload". Es arbeitet selbstverständlich mit dem emu10k1-Treiber (und Alsa) zusammen. (Für oss heisst das Programm sfxload - Rosegarden und Jack erfordern aber Alsa). Zu den Optionen siehe die Man-Seiten.

Anstatt manuell mit asfxload zu arbeiten, kann man das Laden auch von Rosegarden vornehmen lassen - Rosegarden setzt dazu asfxload ein. Der entscheidende Dialog hierfür findet sich unter "Einstellungen -> Rosegarden einrichten -> Midi" und nicht (!) unter "Studio -> Midi-Geräte verwalten".

Rosegarden_1

Laden von Soundfontdateien zur Rosegarden-Konfiguration
Damit Rosegarden sinnvoll zum "Komponieren" von Musiksequenzen verwendet werden kann, muss auch Rosegarden über das Midi-Device und sein Angebot Bescheid wissen. Hierzu können bestimmten Midi-Devices einerseits echte HW-Devices zugeordnet werden. Andererseits soll Rosegarden auch über die Soundbänke informiert werden. Letzteres entspricht dem "Laden" (Auswerten) der Soundfont-Dateien in Rosegarden und die Zuordnung zu den Midi-Devices für die diversen Dialoge und Oberflächen von Rosegarden. Die entsprechenden Konfigurationseinstellungen nimmt man nun unter "Studio -> Midi-Geräte verwalten" vor.

Rose_Midi_1

Rose_Midi_2

Hier lädt man dann das gleiche File, dass man zuvor an die Soundkarte übermittelt hat, erneut - nur diesmal für Rosegarden. Rosegarden bietet danach in seinen Dialogen die richtigen, d.h. die zum geladenen Soundfont passenden Kanäle und Instrumente an.

Endlich - Töne
Nun steht dem Komponieren mit den sehr eingänglichen Dialogen nichts mehr im Wege. man legt ein Segment an und bearbeitet dieses dann z.B. im Matrixeditor. Auf dem dortigen Keyboard kann man die ersten Töne hören (hoffentlich). Welchen Kanal (sprich Instrument) man der aktuellen Sequenz zuordnen will regelt man am besten mit einer Reihe von anderen Einstellungen hier. Danach heiß es nur noch Zeitintervalle mit Noten zu füllen .....

Rose_matrix

Im Hauptfenster kann man übrigens das hörbare Instrument im nachhinein noch abändern.

Stabilität?
Aus meiner Sicht ist Rosegarden im Zusammenspiel mit Jack und anderen Musik-Komponenten noch nicht 100%-ig stabil. Es kam beim Spielen manchmal zu Jack-Fehlern und nachfolgenden Problemen mit Rosegarden. Im schlimmsten Fall war sogar ein Neustarten des kompletten Audiosystems vonnöten. Ich bin im Moment nicht sicher, welche der vielen Komponenten (emu10k1, Jack und seine vielen Komponenten, andere Jack-fähige Audioprogramme oder eben Rosegarden) die Schuld an den Problemen trägen.
Aber im Allgemeinen kann man sich mit Rosegarden und schönen wie schrägen Eigenkompositionen sehr gut die Zeit vertreiben. Ein im Ansatz sehr nettes Programm - auch für Laien, wenn man es richtig einrichtet.

Links
http://rosegarden.sourceforge.net/tutorial/en/chapter-1.html
http://de.wikipedia.org/wiki/Musical_Instrument_Digital_Interface