Der MP3-Spieler XMMS (http://www.xmms.org/) ist unter Linux wohl mittlerweile die beliebteste Software dieser Art geworden. Das liegt nicht zuletzt an der Möglichkeit, seinen Funktionsumfang durch Plugins zu erweitern. Ein kleines, aber feines Plugin ist Crossfade von Peter Eisenlohr. Damit ist XMMS in der Lage, Titel ineinander überzublenden und unterbrechungsfrei abzuspielen.
Bevor wir uns das eigentliche Plugin von http://www.netcologne.de/~nc-eisenlpe2/xmms-crossfade/ (bzw. aus dem Verzeichnis LinuxUser/ootb/ der Heft-CD) holen, müssen wir sicher stellen, dass folgende Pakete installiert sind:
Da Crossfade nur im Quelltext vorliegt, geht es zunächst ans Kompilieren. Das ist dank des -Skripts keine aufwändige Sache:
tar xzf xmms-crossfade-0.1.1.tar.gz cd xmms-crossfade-0.1.1 ./configure
Bei älteren XMMS-Versionen kann es nötig sein, dem configure-Skript explizit den Installationsort für das Plugin mitzugeben. Dazu ermitteln wir zunächst mit locate libOSS.so, wo sich die Standard-Plugins befinden. Liefert der locate-Befehl etwa /usr/lib/xmms/Output/libOSS.so zurück, so muss es oben heißen:
./configure --libdir=/usr/lib/xmms/Output
Nach erfolgreichem configure-Lauf geht es weiter:
make su(root-Passwort eingeben) make install ; exit
Nach der Plugin-Installation muss XMMS einmal neu gestartet werden, um von seiner neuen Komponente Notiz zu nehmen. Im Menü Options/Preferences/Output Plugin sollte nun als Ausgabe-Plugin Crossfade gewählt werden (eingekreister Bereich in Abbildung 1).
Anschließend blendet XMMS aufeinander folgende Titel sauber ineinander über. Beim Abarbeiten der Playlist wird gegen Ende eines Stücks ausgeblendet und der nächste Track währenddessen eingeblendet. Über Play file kann der Benutzer jedoch jederzeit auch manuell einen neuen Titel wählen. In diesem Fall blendet XMMS den gerade laufenden Track sofort in den neuen über.
Einige Besonderheiten lassen sich noch in den Konfigurationsmenüs des Plugins einstellen. Wer sich beispielsweise den Luxus zweier Soundkarten im Rechner leistet, kann im Abschnitt mit Use alternate device ein anderes Ausgabegerät als /dev/dsp vorgeben (Abbildung 2).
Der Abschnitt Buffer legt mit Mixing buffer size die Größe des Puffers fest, in dem das Plugin die Titel überlappend zusammen mischt. Mit zweieinhalb Sekunden steht hier bereits eine sinnvolle Voreinstellung. Außerdem kann man den Arbeitsmodus von Crossfade auf Gap Killer umstellen, falls XMMS aufeinander folgende Titel ohne Überblenden und ohne hörbare Lücke spielen soll (Abbildung 3).
Die weiteren Konfigurationen unter Mixer und Misc haben ebenfalls sinnvolle Voreinstellungen und sollten nicht oder nur zu Testzwecken geändert werden.
Kommende Versionen des Plugins sollen noch ein paar kleine Schönheitsfehler ausbügeln. So fehlt bis jetzt die Möglichkeit, den Sound über esd auszugeben. Auch gibt es gelegentlich Probleme mit anderen Effekt-Plugins. Als Fazit lässt sich dennoch sagen: Dieses Plugin steigert den Hörgenuss!
Glossar
MP3
Abkürzung für MPEG 1 Audio Layer 3. Ein Verfahren, das Audiodaten in CD-Qualität ohne nennenswerte Verluste auf ca. ein Elftel der Ausgangsgröße reduziert.
Plugins
Ein Programmfragment, das sich als Erweiterung in ein größeres Programm "einstecken" (engl.: "plug in") lässt. Prominente Software mit Plugin-Technik ist Gimp und XMMS.
gtk
Das "Gimp Toolkit" ist eine Programmierbibliothek, die das Erstellen von Menüs und Dialogboxen unter X11 erleichtert. Diese Library wurde zunächst für das Grafikprogramm Gimp geschrieben, ist aber inzwischen Grundlage vieler anderer Programme.
Kompilieren
Ein Programm ist in Quelltextform noch nicht vom Betriebssystem ausführbar. Erst durch das Übersetzen mit einem Compiler ("Kompilieren") wird daraus eine durch den jeweiligen Prozessor ausführbare Darstellung. Ein großer Vorteil der Quelltextform ist, dass sich so vorliegende Software auf verschiedenen Plattformen (Intel, Sparc, Alpha, …) übersetzen lässt, wenn sie nur ausreichend portabel programmiert wurde.
configure
Dient zum automatischen Auswerten von Eigenschaften des Systems, auf dem ein Quelltext kompiliert werden soll. So findet configure z. B. selbstständig heraus, welcher C-Compiler installiert ist.
Playlist
Die Spielliste des XMMS. Alles, wofür ein Input Plugin installiert ist, kann hier hinzugefügt und dann (auf Wunsch in zufälliger Reihenfolge) abgespielt werden.
Devices
(engl.: "Gerät") Unter Linux wird der größte Teil der Hardware über spezielle Gerätedateien angesprochen. Diese Dateien befinden sich im Verzeichnis /dev und haben standardisierte Namen. Beispiele sind /dev/hda für die erste IDE-Festplatte, /dev/lp0 für die parallele Druckerschnittstelle oder /dev/dsp für den "digitalen Signalprozessor" der Soundkarte.
esd
Der "Enlighted Sound Daemon" ist ein Server ("Dienstprogramm"), der mehrere Audioquellen noch vor der Ausgabe auf die Soundkarte zusammen mischt. So kann diese von mehr als einem Programm gleichzeitig benutzt werden.