Linux bietet für jeden Geschmack die passenden Programme, so auch für Musikfreunde. Die technischen Grundlagen des Linux-Soundsystems erklärt der folgende Artikel.
Linux ist weithin als hervorragende Basis für Server-Installationen und Desktop-Rechner mit Standardaufgaben bekannt. Als Geheimtipp gilt das freie Betriebssystem jedoch noch immer in vielen Anwendungsbereichen, die sich abseits des Mainstreams von Office, Firefox & Co. bewegen. Auch Multimedia-Applikationen assoziieren die meisten eher mit anderen Betriebssystemen. Dabei hat sich Linux insbesondere im Video-, Audio- und Bildbearbeitungssegment in den letzten Jahren vom Aschenputtel mit schwer zu installierender Hardware und leistungsfähiger, aber gewöhnungsbedürftiger Software zu einem wahren Schmuckstück entwickelt, das in nahezu allen Fällen phantastische Möglichkeiten ohne komplizierte Installationsorgien bietet.
Grund dafür ist die rasante technische Entwicklung, die – wie üblich bei freier Software – bunte Vielfalt statt bleierner Einfalt hervorgebracht hat. So sind beispielsweise im Audiobereich vom einfachen Player bis hin zu professionellen Schnitt- und Mixprogrammen selbst für die exotischsten Formate unzählige Softwarepakete vorhanden, die praktisch alle erdenklichen Anforderungen abdecken. Damit Sie jedoch auch bei selten auftretenden Problemen nicht im Regen stehen bleiben, sollten Sie die Grundfunktionalität der Soundarchitektur von Linux kennen. Mit dem theoretischen Wissen ist es oft möglich, auch nicht-standardkonforme Hardware, wie man vor allem in älteren Notebooks findet, zur Kooperation mit dem Pinguin zu bewegen.
Aufbau des Soundsystems
Die Soundarchitektur ist unter Linux streng modular und besteht vereinfacht aus drei Elementen: den Hardware-Treibern, dem Soundsystem und einem Soundserver. Dabei sind die Treiber für die Hardware bereits in den jeweiligen Kernel integriert, wobei es sich hierbei nicht – wie unter anderen Betriebssystemen – um Soundkarten-spezifische Treiber handelt, sondern um Chipsatz-spezifische. Dies hat den großen Vorteil, dass für verschiedene Soundkarten, die mit demselben Chipsatz arbeiten, ein einziger Treiber ausreicht. Da die Chipsatz-Module bereits im Kernel verankert sind, benötigen Sie zudem bei der Installation einer neuen Soundkarte keine eigens dafür vorhandenen Treiber auf CD oder aus dem Internet: Linux erkennt die Hardware automatisch und lädt das entsprechende Modul.
Historisches
Bis einschließlich der Kernel-2.4.x-Linie war unter Linux das Open Sound System (OSS) für die Audioansteuerung zuständig [1]. Mit dem Wechsel zur Kernel-2.6.x-Serie hat ALSA (Advanced Linux Sound Architecture) OSS abgelöst [2]. Der Umstieg von OSS auf ALSA war sowohl wegen technischer als auch wegen lizenzrechtlicher Probleme nötig: Der Maintainer von OSS war mit zunehmendem Erfolg seines Projektes in der Linux-Welt auf die Idee gekommen, neue Versionen von OSS unter eine proprietäre Lizenz zu stellen und damit den freien Zugang der Programmierer zum Quellcode zu verhindern. Außerdem nutzte OSS nicht den vollen Funktionsumfang moderner Soundkarten und -systeme, wie z. B. die Unterstützung für Dolby Digital. Deswegen wurde das ALSA-Projekt gegründet, das ursprünglich aus der Treiberentwicklung für die Gravis-UltraSound-Karten hervorging. Da es sich hierbei um eine komplette Neuentwicklung handelt, sind die Treiber von OSS nicht mit jenen von ALSA kompatibel. Weil jedoch einige Anwendungen wie beispielsweise das weit verbreitete Audiobearbeitungsprogramm Audacity auf OSS setzen, verfügt ALSA mithilfe eines Plug-ins über einen Kompatibilitätsmodus, der auch den Betrieb solcher Programme unter ALSA ermöglicht. Dank des ALSA-Systems ist es zusätzlich möglich, mehrere Soundkarten gleichzeitig im Rechner zu betreiben, was insbesondere professionellen Anwendern zugute kommt.
Aufgabenteilung
Das ALSA-Soundsystem dient bei der Audioansteuerung als Mittler zwischen dem Kernel und der Hardware: Es identifiziert die im System verbaute Sound-Hardware und lädt das dazu passende Kernelmodul. Zusätzlich kann man ALSA auch, sofern das dmix-Plug-in installiert ist, als Soundserver verwenden (Abbildung 1). Soundserver dienen unter Linux dazu, die Audiowiedergabe und -bearbeitung zu flexibilisieren: So ist es ohne Soundserver nicht möglich, akustische Signale, die von mehreren Programmen stammen, gleichzeitig zu verarbeiten. Auch das softwaregestützte Abmischen von Signalen aus verschiedenen Quellen übernimmt der Soundserver. Vor allem bei älteren Soundkarten kompensiert er zudem Schwächen der Hardware: Viele betagtere Modelle beherrschen noch nicht die simultane Signalübertragung.
Unter Linux haben sich – je nach verwendetem Desktop – verschiedene Soundserver etabliert: Gnome nutzte lange Zeit der Enlightened Sound Daemon (ESD), der auch unter dem schlanken Window Manager Enlightenment seine Arbeit verrichtet. Ubuntu und Fedora haben den ESD-Server inzwischen durch den PulseAudio-Server ersetzt, der eine deutlich bessere Latenz aufweist und daher das stufenlose Abmischen von Signalen aus verschiedenen Quellen in Echtzeit bietet.
KDE setzte in den Versionen 3.x durchgängig auf Arts als Soundserver, mit KDE 4.0 haben die Entwickler Arts wegen technischer Probleme und seiner unklaren Zukunft durch Phonon ersetzt, wobei Phonon kein Soundserver herkömmlicher Art ist, sondern eine Abstraktionsschicht, die es ermöglicht, auch andere Soundserver anstelle von Arts unter KDE 4 zu nutzen. Zudem erleichtert Phonon durch seine flexible Architektur die Portabilität von Multimediaprogrammen, die auch auf anderen Plattformen laufen sollen.
Die beiden großen Distributionen OpenSuse und Mandriva verwenden inzwischen statt Arts in ihren KDE-Varianten das Duo Phonon/PulseAudio. Eine Sonderrolle nimmt der Jack-Soundserver ein, der vor allem wegen seines enormen Funktionsumfangs und seiner überragenden Echtzeitfähigkeiten im professionellen Bereich beliebt ist.
Praktisches
Für Endanwender sind die technischen Grundlagen in den meisten Fällen unwichtig, da moderne Linux-Distributionen die komplette Audioumgebung eigenständig ohne Zutun des Nutzers installieren und konfigurieren. Nur in sehr seltenen Fällen (vor allem bei nicht mehr ganz taufrischen Notebooks mit ihren oft proprietären Komponenten) kann es vorkommen, dass die Installationsroutine versagt und Sie die Soundunterstützung von Hand einrichten müssen. Dann hilft es meistens auch nicht weiter, wenn Sie sich auf die Herstellerangaben verlassen: Viele der in älteren Notebooks verbauten Soundkarten werden als “SoundBlaster-kompatibel” beworben. Das heißt aber nicht, dass die Karte tatsächlich vollständig zur SoundBlaster von Creative Labs kompatibel ist und mit dem Original-SoundBlaster-Treiber laufen wird. In der Praxis hat sich gezeigt, dass (neben den Steckkarten mit Creative-Labs-Chipsätzen) nur solche mit MAD16- oder ESS688/1688-Chipsatz voll SoundBlaster-kompatibel sind.
Probleme mit der Hardware können auch auftreten, wenn Sie eine uralte Soundkarte nutzen, die einen ISA-Steckplatz belegt. Solche Karten müssen in aller Regel von Hand gejumpert werden, um anderen Komponenten im Rechner nicht in die Quere zu kommen. Bei modernen PCI-Soundkarten oder den in neueren Notebooks mit Intel-Centrino-Technologie verbauten Chipsätzen funktioniert die Soundunterstützung dagegen unter Linux out of the box, da hier in aller Regel der Chipsatz bereits die Akustikunterstützung implementiert hat.
Codecs
Haben Sie Ihre Wunschdistribution komplett auf die heimische Festplatte gepackt, ist zwar die Grundfunktionalität für die Multimedia-Unterstützung eingerichtet, jedoch können Sie noch längst nicht alle entsprechenden Dateien abspielen oder bearbeiten. Vor allem im Videobereich sind fehlende Codecs ein stetig wiederkehrendes Ärgernis, aber auch im Audiosegment tummeln sich viele verschiedene Codecs. Als Codec wird generell ein Verfahren der digitalen Kodierung und Dekodierung bezeichnet, mit dem man Audio- und Videodateien erstellt bzw. wieder abspielt. Die meisten gängigen Audio-Codecs (z. B. MP3 oder Ogg-Vorbis; Abbildung 2) komprimieren die digitalisierten Daten, speichern also das ursprüngliche Tonsignal nicht verlustfrei. Eine Ausnahme bildet hier der FLAC-Codec, der nicht verlustbehaftet arbeitet.

Abbildung 2: Die Webseite des Vorbis-Projekts informiert nicht nur über den Audio-Codec “Ogg Vorbis”, sondern auch über den ebenfalls freien Video-Codec Theora.
Der Vorteil der verlustbehafteten Kodierverfahren besteht in der relativ kleinen Datenmenge, die anfällt. So sind komprimierte Ogg-Vorbis-Musikdateien um ein Vielfaches kleiner als das unkomprimierte Original, wobei sie – ab einer Bitrate von etwa 160 Kbit/s – nur noch in Grenzbereichen für das menschliche Ohr hörbare Unterschiede zum originalen Klang produzieren.
Verlustfreie Codecs wie FLAC hingegen liefern bei einer Rückwandlung in ein analoges Signal zwar eindeutig besseren Klang, produzieren jedoch auch wesentlich größere Datenmengen bei der Kodierung.
Linux unterstützt nahezu alle gängigen und die meisten exotischen Codecs. Fast alle unter Linux etablierten Audiobearbeitungs-, Player- und Ripperprogramme bringen serienmäßig bereits Unterstützung für den FLAC- und den Ogg-Vorbis-Codec mit. Lediglich für den mit Patenten belegten und unter einer proprietären Lizenz stehenden MP3-Codec müssen Sie gelegentlich noch die entsprechenden Dateien aus dem Internet beschaffen. Auch andere proprietäre Codecs wie WMA unterstützen viele Audioprogrammen unter Linux nicht out of the box.
Neben den qualitativen Gründen, die heimische Musiksammlung im hervorragenden Ogg-Vorbis-Format oder im FLAC-Format zu speichern, sprechen für Freunde freier Software noch zwei Argumente gegen MP3, WMA & Co., die eher philosophischer Natur sind: Außer den erwähnten patentrechtlichen Problemen sind diese Formate nämlich auch DRM-tauglich, also so konzipiert, dass sie Anwender in der Nutzung der Dateien einschränken können (siehe Kasten Digitale Restriktionen mit DRM).
Digitale Restriktionen mit DRM
Ein weiteres Problem, das sich aus der Nutzung proprietärer Codecs ergibt, ist das Digital Rights Management (DRM), eine von der Musikindustrie erfundene Technologie, die dem Musik- und Videofreund tatsächlich mehr Rechte nimmt als gibt. Sie erlaubt den Rechteinhabern die uneingeschränkte Nutzungskontrolle ihrer Werke und führt dabei gleichzeitig neue Abrechnungsmodelle ein, die sich durchgängig zum Nachteil des Anwenders herausgestellt haben. Inzwischen haben die meisten Unternehmen der Unterhaltungsindustrie im Audiobereich die DRM-Technologie wieder abgeschafft, da sie von den Anwendern geschmäht wurde. Trotzdem sind nach wie vor DRM-“geschützte” Inhalte verfügbar, die sich unter Linux ohne zusätzliche proprietäre Software nicht abspielen oder bearbeiten lassen.
Bei der Anlage Ihrer privaten Musiksammlung empfehlen sich daher die freien Formate als die bessere Alternative, zumal in der Fachwelt auch unstrittig ist, dass das Ogg-Vorbis-Format dem MP3-Konkurrenten technisch überlegen ist. Da zunehmend mehr Hersteller MP3-Player anbieten, die neben dem MP3- und dem Windows-eigenen WMA-Format auch mit dem freien Ogg-Vorbis-Audioformat umgehen können, ist die Portabilität Ihrer Inhalte gewährleistet. Die freien Codecs sind technisch nicht geeignet, durch DRM oder andere negative Gimmicks den Anwender zu kontrollieren oder ihm nach Belieben in die Tasche zu greifen.
[1] Open Sound System: http://www.opensound.com/
[2] ALSA-Projekt: http://www.alsa-project.org/






