Spiel, Satz und Sieg
Brahms – Notensatz und Sequencer
ALSA, die Advanced Linux Sound Architecture
Alternativ kann Brahms auch im ALSA-Modus betrieben werden, sofern ALSA in der Version 0.5.x installiert ist:
brahms -o alsa
In jeder Tonspur muss der gewünschte ALSA-Port als Ausgang festgelegt sein, mehr ist nicht zu konfigurieren. Der Vorteil besteht darin, dass die Soundfonts der Soundkarte verwendet werden können. Im Gegensatz dazu kennt aRts zurzeit ausschließlich synthetische Instrumente. Für die Wiedergabe orchestraler Instrumente ist das eher unbefriedigend. Außerdem gestattet aRts auf leistungsschwachen Systemen nur wenige Tonspuren. Sobald aRts auch ALSA als Sound- und MIDI-Treiber unterstützt, ist die ALSA-Option in Brahms hinfällig.
Flexibel durch Module
Die wesentlichen Bestandteile von Brahms sind in Bibliotheken abgelegt, die das Programm dynamisch zur Laufzeit lädt. Brahms selbst ist lediglich der Tropfen Klebstoff, der die Bibliotheken zusammenhält.
Die Kernbibliothek enthält alle Kernkomponenten und -funktionen (aber kein User-Interface) sowie zahlreiche abstrakte Klassen. Dazu gehören die Strukturelemente eines Musikstücks (zum Beispiel song, track, part, event, note), alle Operationen, die auf diese Elementen wirken, sowie die Grundfunktionalität der Editoren.
Die Elemente der Kernbibliothek benötigen eine Darstellung (Presentation), also ein User-Interface. Durch die strikte Trennung zwischen Funktion und Darstellung können neue Oberflächen mit minimalem Aufwand implementiert werden. Zurzeit gibt es zwei Darstellungen: TextPresentation und KdePresentation. Die KDE-Variante wird per Default geladen. Startet man Brahms mit der Option
brahms -p text
so läuft die gesamte Applikation auf der Konsole. Sogar die Darstellung der Noten im ScoreEditor ist in der Kernbibliothek abstrahiert. Daher war es sehr einfach, eine entsprechende Darstellung im Textmodus zu implementieren (Abbildung 16).
Bei beiden Abbildungen handelt es sich um den selben Musik-Ausschnitt. Die Achtelnoten sind in der Textform einzeln gesetzt: Die Abstraktion enthält zwar die Information über Gruppierungen von Noten, überlässt es jedoch der Darstellung, diese zu nutzen oder nicht.
Die Textform ist natürlich nicht wirklich bequem zu bedienen. Zur Not könnte man Brahms damit ohne grafischen Desktop von der Kommandozeile aus starten, im Grunde dient diese Darstellung jedoch als Proof of concept. Es wäre denkbar, eine rein Qt- oder Gtk-basierte Darstellung zu implementieren. Eine interessante Alternative wäre auch eine Web-Variante, die Brahms zum Musikserver wandelt, der per Browser bedient wird.



