8Audio und Video

Dieses Kapitel erklärt – zumindest so weit, wie es der Gesetzgeber zulässt –, wie Sie unter Linux Audio-Dateien anhören, CDs auslesen (rippen), MP3-Tags einstellen, Video-DVDs und -Dateien abspielen, Video-Dateien recodieren und Screencasts aufnehmen. Dabei setze ich voraus, dass das Audio- und Video-System Ihrer Distribution grundsätzlich funktioniert. Unter anderem stelle ich Ihnen die folgenden Programme kurz vor:

Zum Thema Multimedia ließe sich natürlich noch viel mehr schreiben, durchaus auch ein ganzes Buch! So viel Platz ist hier aber nicht. Der Grundlagenabschnitt, der dieses Kapitel einleitet, gibt Ihnen jedoch zumindest einen Überblick über eine Menge weiterer Multimedia-Programme, die Ihnen unter Linux zur Verfügung stehen.

8.1Multimedia-Grundlagen

Encoder und Decoder

Encoder wandeln unkomprimierte Audio- oder Video-Daten in ein komprimiertes Format um (z.B. MP3, Ogg oder MPEG-4). Die Aufgabe des Encoders ist es, die Daten einerseits möglichst stark zu komprimieren, andererseits aber für geringe Qualitätsverluste zu sorgen. Das ist ein rechenintensiver und daher verhältnismäßig langsamer Vorgang.

Decoder sind für die umgekehrte Richtung zuständig, also für die Umwandlung der komprimierten Daten in ein Format, das an Soundkarten bzw. die Grafikkarte weitergegeben werden kann. Jeder Audio- oder Video-Player muss daher auf Decoder für das jeweilige Format zurückgreifen. Decoder benötigen Sie aber auch, wenn Sie komprimierte Dateien in ein unkomprimiertes Format zurückverwandeln möchten (siehe auch Abschnitt 15.2, »Audio- und Video-Konverter«). Das ist zweckmäßig, wenn Sie eine herkömmliche Audio-CD erzeugen möchten – denn dazu benötigen Sie unkomprimierte WAV-Dateien.

Manchmal besteht auch der Wunsch, Audio- oder Video-Dateien von einem Format in ein anderes umzuwandeln oder stärker zu komprimieren. Dieser Vorgang wird üblicherweise als Recodieren (Recoding) bezeichnet.

Das dem Encoder/Decoder zugrunde liegende Verfahren wird als Codec bezeichnet. Umgangssprachlich meint Codec aber zumeist die Bibliothek bzw. das Modul/Plugin zur (De-)Codierung eines bestimmten Audio/Video-Formats.

Es existieren zahllose Codecs, wobei für Windows und Mac OS X der Decoder-Teil zumeist kostenlos verfügbar ist. Codec-Entwickler versuchen damit einen möglichst hohen Marktanteil ihres Formats zu erreichen. Etwas schwieriger ist die Situation unter Linux: Im Rahmen der Projekte FFmpeg und avconv gibt es zu vielen populären Codecs Open-Source-Implementierungen für den Decoder und zumeist auch für den Encoder. Allerdings ist der rechtliche Status dieser Programme bzw. Bibliotheken teilweise zweifelhaft, weil viele Codecs durch Patente und Lizenzen geschützt sind. Mangels besserer Alternativen greifen dennoch die meisten Audio- und Video-Player auf die Bibliotheken dieser Projekte zurück. Dies gilt z.B. für MPlayer, VLC, xine sowie für alle Programme, die auf GStreamer basieren.

Aufgrund der unklaren rechtlichen Situation, die auch von der nationalen Gesetzgebung abhängt, sind im Standardlieferumfang der meisten Linux-Distributionen nur wenige Codecs enthalten. Bei vielen Distributionen ist anfänglich nicht einmal eine MP3-Wiedergabe möglich. Abhilfe schaffen in der Regel inoffizielle Paketquellen.

Ein Ausweg aus dem rechtlichen Dilemma sind offiziell lizenzierte Codecs, die die Firma Fluendo anbietet (http://www.fluendo.com). Die Codecs sind allerdings nur für das GStreamer-Audio-System geeignet und nicht zu allen in diesem Kapitel vorgestellten Programmen kompatibel. Fluendo richtet sich zudem nur an Firmen oder Distributoren. Beispielsweise hat Ubuntu eine Vereinbarung mit Fluendo getroffen und kann daher ein Paket mit dem Fluendo-MP3-Codec ausliefern.

Damit Sie live via Internet Radio hören oder fernsehen können, stellen viele Radio- und TV-Sender einen kontinuierlichen Datenstrom zur Verfügung. Dadurch kann die Wiedergabe sofort nach dem Start der Übertragung beginnen. Ein herkömmlicher Download ist nicht vorgesehen, oft auch aus Lizenzgründen. Manche Audio- und Video-Player bieten aber die Möglichkeit, den gerade abgespielten Datenstrom mitzuschneiden, also in eine Datei zu übertragen.

YouTube bietet die Videos wahlweise via Flash oder verpackt in HTML5-Seiten an. Das Abspielen von YouTube-Videos setzt also entweder einen Webbrowser mit Flash-Plugin voraus oder einen HTML5-kompatiblen Browser samt der erforderlichen Codecs.

Wenn Sie selbst Streaming anbieten möchten, z.B. um diverse elektronische Geräte in Ihrem Haushalt mit Audio- oder Video-Streams zu versorgen, können Sie dazu unter anderen ffserver (Teil des FFmpeg-Projekts), Icecast (nur Audio), SHOUTcast oder VLC einsetzen.

Verschlüsselung, CSS, DRM

Nach der massenhaften Verbreitung von MP3-Dateien durch diverse Tauschbörsen wollte die Multimedia-Industrie ein vergleichbares Desaster im Video-Bereich vermeiden. Deswegen sind nahezu alle Video-DVDs durch das CSS (Content Scrambling System) verschlüsselt. Der dadurch erreichte Schutz hat sich freilich als gering erwiesen. Die Verschlüsselung ist ziemlich primitiv und wurde rasch geknackt.

Weit mehr Mühe als mit dem Verschlüsselungsalgorithmus hat sich die Medienindustrie gegeben, um jegliche Open-Source-Techniken zur Entschlüsselung zu kriminalisieren. Aus diesem Grund ist der Einsatz einer Entschlüsselungsbibliothek in vielen Ländern verboten.

In Deutschland ist es aufgrund des Urheberrechtsgesetzes sogar verboten, die Installation einer Bibliothek zur CSS-Entschlüsselung zu beschreiben. Auch wenn es im Internet unzählige Websites mit entsprechenden Anleitungen gibt, darf ich diese Informationen hier weder wiedergeben noch einen entsprechenden Link nennen. Die Grenzen der Pressefreiheit sind enger, als man denkt.

Damit Sie mich richtig verstehen: Es geht hier nicht um illegales Kopieren! Ich darf Ihnen nicht einmal erklären, wie Sie Ihre gerade in einem Geschäft erworbene DVD unter Linux ansehen können. Ein gewisser Trost ist hier nur der Umstand, dass dies auch unter Windows und OS X immer schwieriger wird. Zudem sind Notebooks und PCs mit einem DVD-Laufwerk im Aussterben begriffen.

Sie sehen schon: Dem Video-Genuss unter Linux stehen weniger technische als vielmehr rechtliche Probleme im Weg. Den meisten Linux-Freaks wird es mit der Hilfe von Google dennoch gelingen, ihr System zufriedenstellend zu konfigurieren. Für Einsteiger ist es aber praktikabler, einen billigen DVD-Player an den Fernseher anzuschließen.

CSS war nur der Anfang: Blu-ray Discs sehen wesentlich bessere Schutzmechanismen vor, die zum Teil direkt in der Hardware implementiert werden müssen, also beispielsweise in der Grafikkarte. Zwar wurden auch diese Schutzmaßnahmen bereits geknackt, die Vorgehensweise ist aber komplizierter geworden.

DRM steht für Digital Rights Management. Mit dieser Technik wird eine Audio- oder Video-Datei an eine bestimmte Hardware gebunden. Die Datei kann zwar mühelos kopiert, auf einem anderen Rechner aber nicht abgespielt werden. Lange Zeit waren alle Downloads von Apples iTunes-Shop durch DRM geschützt. Allerdings hat sich hier in den letzten Jahren eine Kursänderung abgezeichnet: Digitale Musik wird zunehmend DRM-frei verkauft – nicht zuletzt aufgrund des Drucks, den Apple auf die Musikindustrie ausgeübt hat.

Tot ist DRM aber leider noch lange nicht: Obwohl es bei Musik nicht funktioniert hat, versuchen Medienanbieter nun Videos, eBooks etc. DRM-geschützt zu verkaufen. Linux-Anwender sind von der legalen Nutzung DRM-geschützter Medien weitgehend ausgeschlossen, und eine Besserung dieser Situation ist nicht in Sicht. Kaufen Sie nach Möglichkeit nur DRM-freie Musik bzw. Videos!

Audio- und Video-Formate

Es existieren unzählige Audio- und Video-Formate. Dieser Abschnitt macht gar nicht erst den Versuch, diese Formate vollständig aufzuzählen bzw. zu beschreiben. Vielmehr fasst er einige Linux-spezifische Informationen zu häufig eingesetzten Formaten zusammen. Einen guten Überblick über populäre Audio- und Video-Codecs gibt der folgende Wikipedia-Artikel:

https://de.wikipedia.org/wiki/Codec

Alle im Folgenden aufgezählten Formate werden in der einen oder anderen Form von Linux unterstützt. Aufgrund der bereits erwähnten rechtlichen Probleme können nur wenige Codecs offiziell in eine Distribution integriert werden.

WAV ist ein von Microsoft definiertes, sehr einfaches Audio-Format ohne Komprimierung. Die resultierenden Dateien sind frei von Qualitätsverlusten, aber leider riesig. WAV-Dateien können unter Linux problemlos erzeugt und abgespielt werden, es gibt weder Lizenz- noch Patentprobleme.

MP3 steht für MPEG-1, Audio Layer 3, wobei MPEG wiederum eine Abkürzung für Moving Pictures Experts Group ist. MP3 ist das bei Weitem populärste Dateiformat zur Komprimierung von Audio-Daten. Für Linux existieren diverse MP3-Decoder, sowohl in Form eigenständiger Kommandos oder Programme (mpg123) als auch als Bibliotheken. Bei MP3-Encodern zum Erzeugen von MP3-Dateien ist die Auswahl kleiner, in der Praxis kommt eigentlich nur noch lame zum Einsatz.

Obwohl das MP3-Verfahren überwiegend im Fraunhofer Institut entwickelt wurde, gibt es mehrere Firmen, die über MP3-Patente verfügen. Das bedeutet, dass MP3-Encoder lizenziert werden müssen – selbst dann, wenn sie kostenlos weitergegeben werden. Aus diesem Grund gibt es kaum noch eine Linux-Distribution, die MP3-Encoder direkt mitliefert.

Etwas besser sieht die Lage bei MP3-Decodern (MP3-Playern) aus: Zwar ist auch diese Technik patentiert, das Fraunhofer Institut und die Firma Thomson haben aber zum Ausdruck gebracht, dass Open-Source-Player bis auf Weiteres ohne Lizenz eingesetzt werden können:

http://mp3licensing.com

ID3-Tags sind Zusatzinformationen, die innerhalb der MP3-Datei gespeichert werden. Sie können unter anderem die folgenden Informationen umfassen: Titel, Interpret, Albumname, Komponist, ein Bild des CD-Covers etc. Es gibt zwei gängige Standards zur Speicherung der ID3-Informationen: ID3v1 und ID3v2 mit vielen zusätzlichen Textfeldern und Erweiterungsmöglichkeiten. Alle Audio-Player werten ID3-Tags aus, wobei die meisten Player kompatibel zu beiden Standards sind.

Die Informationen für die ID3-Tags werden in der Regel bereits beim Auslesen (Rippen) von Audio-Tracks ermittelt und gespeichert. Außerdem existieren zahllose Kommandos und Benutzeroberflächen, um die ID3-Informationen nachträglich zu vervollständigen, zu korrigieren bzw. von ID3v1 auf ID3v2 umzustellen (suchen Sie in Ihrem Paketmanager nach id3). Besonders komfortabel ist das Gnome-Programm EasyTAG; populäre Alternativen sind Ex Falso oder Kid3. Auch manche Audio-Player sind in der Lage, ID3-Tags zu verändern, beispielsweise Amarok.

Ogg Vorbis ist die Open-Source-Alternative zum MP3-Format. Ogg Vorbis bringt einen neuen Audio-Datentyp (Dateikennung .ogg) samt der Software zum Encodieren und Decodieren mit sich. Ogg Vorbis ist als Reaktion auf die Patent- und Lizenzschwierigkeiten mit dem MP3-Format entwickelt worden. Die Audio-Qualität ist so gut wie die von MP3. Das Ogg-Format unterstützt zwar keine ID3-Tags, Titel- und Meta-Informationen können aber in den Vorbis-Tags gespeichert werden. Detaillierte Informationen finden Sie unter:

http://www.vorbis.com

Leider hat sich das Ogg-Vorbis-Format nicht durchsetzen können. Im Internet werden Sie selten auf Ogg-Musikdateien stoßen, und auch Ogg-kompatible Audio-Player sind Mangelware. Deswegen ist das Ogg-Format eigentlich nur dann eine Option, wenn Sie Audio-Dateien nur am lokalen Computer anhören möchten, nicht aber auf externen Playern.

Opus ist ein weiterer Audio-Codec, der ähnliche Eigenschaften wie Ogg Vorbis bietet, aber eine bessere Tonqualität speziell bei Echtzeitanwendungen verspricht. Der Codec ist als offener Standard aus einem Gemeinschaftsprojekt mehrerer Firmen und Organisationen entstanden (Mozilla, Skype/Microsoft, Xiph.org etc.).

FLAC (Free Lossless Audio Codec) ermöglicht eine verlustfreie Kompression von Audiodaten. Das Format ist vor allem bei audiophilen Musikhörern beliebt.

Windows Media Audio (WMA) ist ein weiterer, von Microsoft entwickelter Audio-Codec mit DRM-Unterstützung. Der Codec ist unter dem Namen VC-1 standardisiert und steht auch als Open-Source-Implementierung zur Verfügung, z.B. für den MPlayer bzw. im Rahmen der ffmpeg/libavcodec0d-Pakete.

Advanced Audio Coding (AAC) ist eine Weiterentwicklung des MP3-Verfahrens, das im MPEG-2-Standard spezifiziert wird und ebenfalls DRM-Unterstützung bietet. AAC ist weitverbreitet und kommt unter anderem bei fast allen Audio-Dateien von Apple iTunes zum Einsatz. Mit faac/faad bzw. libfacc/libfaad existieren AAC-Encoder und -Decoder für Linux, die allerdings nur DRM-freie AAC-Dateien erzeugen bzw. verarbeiten können.

ATSC A/52 oder kurz AC-3 ist ein von Dolby Digital entwickeltes Mehrkanal-Audio-Format, das unter anderem für die Tonspur der meisten DVDs zum Einsatz kommt. Mit liba52 existiert ein Open-Source-Decoder.

MPEG-1, -2 und -4 definieren diverse Formate zur Komprimierung von Audio- und Video-Daten. Wichtige Teile von MPEG-4 sind gleich in mehreren alternativen Codecs implementiert, die alle MPEG-4-kompatibel sind. Dazu zählen XviD und WebM (beide Open Source), DivX, H264 und H265.

Unter dem Namen Windows Media Video (WMV) hat auch Microsoft eigene Video-Codecs entwickelt. Die WMV-Versionen 1 bis 3 (oft auch WMV7 bis -9 genannt, weil sie zusammen mit dem Windows Media Player 7 bis 9 ausgeliefert wurden) bieten ähnliche Eigenschaften wie MPEG-4, unterstützen aber zusätzlich DRM.

Der von der Xiph.org-Foundation entwickelte Codec Theora ist das Video-Gegenstück zu Ogg-Vorbis. Auch der Theora-Codec bietet ähnliche Eigenschaften wie MPEG-4, basiert aber vollständig auf Open-Source-Code und ist damit frei verfügbar. Der Codec wird unter anderem vom Wikimedia-Projekt eingesetzt. Firefox kann ohne Installation irgendwelcher Plugins Theora-Videos abspielen.

http://www.theora.org

Im Zuge der Entwicklung von HTML5 bestand für die Browser-Entwickler die Notwendigkeit, Audio- und Video-Codecs in ihre Webbrowser zu integrieren. Während Microsoft und Apple auf den proprietären Codec H264 setzen, hätte die Open-Source-Gemeinde gerne die Codecs Ogg und Theora unterstützt. Das scheiterte aber an deren mangelnder Verbreitung.

Diesen gordischen Konten versuchte Google zu durchschlagen, indem es den Codec-Entwickler On2 aufkaufte und den von dieser Firma entwickelten MPEG-4-Codec VP8 unter dem neuen Namen WebM als Open-Source-Code freigab. Wirklich umfassenden Erfolg hatte dieser Codec leider auch nicht, da es Zweifel gab, dass der Codec frei von fremden Patenten ist.

2013 stellte Google den verbesserten Nachfolger-Codec VP9 fertig. Dieser Codec ist unter anderem in Google Chrome, Firefox und Opera inkludiert. Viele YouTube-Videos sind in VP9 kodiert. Im Herbst 2014 hat Google mit der Arbeit für die nächste Codec-Version VP10 begonnen.

Parallel zur Entwicklung eigener Codecs sind die Browser-Hersteller dazu übergegangen, einfach auf Treiber zurückzugreifen, die auf betriebssystemebene installiert ist. Dies gilt z.B. für Firefox ab der Version 24, die unter Linux die GStreamer-Bibliotheken nutzt.

Video-Container

Ein Film besteht aus mehreren Komponenten, die intern voneinander getrennt sind: Zum eigentlichen Video ohne Ton kommen die Audio-Kanäle hinzu (oft in mehreren Sprachen, in Stereo und/oder in Mehrkanaltechnik wie Dolby Surround), bisweilen auch Untertitel (ebenfalls in mehreren Sprachen) und Metadaten, z.B. das DVD-Menü. Auf einer DVD liegen diese Komponenten in einzelnen Dateien vor. Soll ein Film aber in einer Datei verpackt werden, ist ein Container-Format erforderlich.

In der Vergangenheit war AVI (Audio/Video Interleave) das populärste Format: Sie kennen das Format vielleicht von manchen Digitalkameras, die selbst aufgenommene Videos so verpacken. Allerdings ist das AVI-Format relativ alt und mit vielen Einschränkungen verbunden. Beispielsweise können in AVI-Dateien keine Untertitel verpackt werden.

Immer stärkere Verbreitung fand zuletzt das von Apple definierte Container-Format QuickTime (QT oder MOV).

In den letzten Jahren wurden diverse weitere Container-Formate entwickelt: Matroska (MKV), MP4 und OggMedia (OGM). Der größte Nachteil dieser Formate besteht darin, dass derartige Dateien in der Regel nur auf dem Computer abgespielt werden können, nicht aber auf DVD-Playern (schon gar nicht auf älteren Modellen). Dafür bieten diese Container-Formate eine Menge zusätzlicher Möglichkeiten. Falls Sie die Wahl haben, sollten Sie das MKV-Format vorziehen, das momentan die meisten Funktionen bietet und sich bei video-begeisterten PC-Anwendern als eine Art inoffizieller Standard etabliert hat.

Das Container-Format hat nichts mit den Codecs zu tun!

Um es nochmals klarzustellen: Die hier vorgestellten Formate beschreiben lediglich den Container. Aus den Dateikennungen *.avi, *.mkv, *.mp4, *.mov, *.ogm bzw. *.qt geht nicht hervor, welche Audio- und Video-Codecs intern zum Einsatz kommen. Jedes Container-Format unterstützt diverse Codecs. Je nachdem, welche Codecs auf Ihrem Rechner installiert sind, kann es daher sein, dass Ihr Video-Player eine AVI-Datei abspielen kann, eine andere aber nicht.

Rechtliche Situation, Zusatzpakete

Ich habe nun bereits mehrfach erwähnt, dass je nach Ort, Gesetzgebung und der Reichweite bzw. Gültigkeit von Patenten eine standardmäßige Auslieferung diverser Codecs und Entschlüsselungs-Software unmöglich ist. Da Linux-Distributionen international heruntergeladen werden, müssen sie dem kleinsten gemeinsamen Nenner entsprechen.

Zu vielen Distributionen gibt es aber inoffizielle Paketquellen, in denen solche Pakete gesammelt sind (siehe Tabelle 8.1). Sie müssen diese Paketquellen zumeist selbst einrichten und können die gewünschten Pakete dann herunterladen. Auf den Websites der Paketquellen werden Sie oft einen Hinweis finden, dass Sie sich vor dem Download vergewissern müssen, dass die Verwendung der so zur Verfügung gestellten Software in Ihrem Land zulässig ist.

Distribution

Multimedia-Website oder -Paketquelle

Debian

http://deb-multimedia.org

Fedora

http://fedoraproject.org/wiki/Multimedia
http://rpmfusion.org
http://rpm.livna.org

openSUSE

https://en.opensuse.org/Restricted_formats
http://packman.links2linux.de

Ubuntu

https://help.ubuntu.com/community/RestrictedFormats
http://www.medibuntu.org

Tabelle 8.1Populäre Multimedia-Websites und -Paketquellen

Ubuntu – Multimedia-Genuss für Linux-Einsteiger

Wenn Sie sich nicht mit der Suche nach Paketquellen und den richtigen Codecs plagen wollen, empfehle ich Ihnen Ubuntu oder eine von Ubuntu abgeleitete Distribution. Sie installieren einfach das Paket ubuntu-restricted-extras bzw. je nach Variante kubuntu-restricted-extras, xubuntu-restricted-extras etc., und nahezu alle Codec-Probleme sind gelöst.