15.2Audio- und Video-Konverter

Tabelle 15.1 gibt einen Überblick über die wichtigsten Kommandos, um Audio-Dateien von der CD zu lesen bzw. um Audio- und Video-Dateien von einem Format in ein anderes umzuwandeln. Soweit der Paketname nicht ohnedies aus dem Kommando hervorgeht, ist er in Klammern angegeben. Der Paketname kann allerdings von Distribution zu Distribution variieren.

Format

Kommando (Paket)

CD → WAV

icedax, cdparanoia

MP3 → WAV

mpg123, mpg321, madplay

WAV → MP3

lame

OGG → WAV

oggdec (vorbis-tools)

WAV → OGG

oggenc (vorbis-tools)

MP3 → OGG

mp32ogg

AAC → WAV

faad

WAV → AAC

faac

WAV ↔ FLAC

flac

Audio ↔ Audio

sox

Audio ↔ Audio

sfconvert (audiofile)

Audio/Video ↔ Audio/Video

ffmpeg (Audio/Video-Konverter)

Audio/Video ↔ Audio/Video

mencoder (noch ein Audio/Video-Konverter)

Tabelle 15.1Audio- und Video-Konverter

Im Folgenden finden Sie einige Zusatzinformationen und Beispiele zu ausgewählten Kommandos. Auf eine Referenz der Optionen dieser Kommandos verzichte ich aus Platzgründen. (Bei Bedarf hilft man kommandoname weiter.)

Beim CD-Ripper geht es nicht um Jack the Ripper, sondern um die Kunst, Audio-Tracks möglichst effizient und ohne Qualitätsverlust von einer CD auf die Festplatte zu übertragen. Zu den populärsten derartigen Kommandos zählen cdparanoia und icedax (ehemals cdda2wav). cdparanoia hat den Ruf, auch bei Problemfällen wie zerkratzten CDs besonders gute Ergebnisse zu liefern. Beide Kommandos werden mit einer Unzahl von Parametern gesteuert.

Hier zwei Beispiele: Das erste Kommando liest Track 3 einer CD im ersten CD/DVD-Laufwerk. Die resultierende Datei bekommt den Namen audio.wav:

root# icedax -D /dev/scd0 -t 3

Das folgende Kommando liest Track 4 von einer CD im selben Laufwerk. Das Ergebnis ist die Datei cdda.wav im lokalen Verzeichnis:

root# cdparanoia -d /dev/scd0 "4"

Wegen der in Kapitel 8, »Audio und Video«, erwähnten Patentprobleme gibt es nur wenige Linux-Distributionen, die einen MP3-Encoder in offiziellen Paketen mitliefern. Diverse Encoder sind aber im Internet als Zusatzpakete verfügbar. Das bekannteste Programm ist lame:

http://lame.sourceforge.net

Die Anwendung ist denkbar einfach: lame input.wav output.mp3 erzeugt aus der Ausgangsdatei im WAV-Format eine entsprechende MP3-Datei. Der Vorgang und insbesondere die gewünschte Qualität der MP3-Datei wird durch zahlreiche Optionen gesteuert.

Die in Tabelle 15.1 aufgezählten Kommandos können kombiniert werden, um beispielsweise eine MP3-Datei in das Ogg-Vorbis-Format umzuwandeln. Beachten Sie aber, dass mehrstufige Umwandlungen mit Qualitätsverlusten behaftet sein können und möglichst vermieden werden sollten!

user$ mpg321 -s in.mp3 -w - | oggenc - -o out.ogg

Durch das obige Kommando gehen auch die Info-Tags (ID3) verloren. Dieser Nachteil kann durch den Einsatz des MP3-Ogg-Konverter-Scripts vermieden werden, z.B. durch das leider nicht mehr gewartete Script mp32ogg von http://faceprint.com/code.

FLAC steht für Free Lossless Audio Codec. FLAC-Dateien sind zwar größer als MP3- oder Ogg-Dateien, aber wesentlich kleiner als WAV-Dateien. Der wesentliche Vorteil im Vergleich zu MP3 oder Ogg besteht darin, dass die Audio-Daten verlustfrei codiert werden. Zum Codieren und Decodieren verwenden Sie das Kommando flac.

SoX steht für Sound Exchange und bietet mit dem Kommando sox eine weitere Möglichkeit, Audio-Dateien von einem Format in ein anderes umzuwandeln. sox kennt mehr Formate als sfconvert (siehe unten). Zu sox gibt es die grafischen Oberflächen xsox sowie gsox.

Das Paket audiofile implementiert die wichtigsten Funktionen der gleichnamigen Audio-File-Bibliothek des Computerherstellers SGI. Das interessanteste Kommando ist sfconvert: Es konvertiert Audio-Dateien zwischen den Formaten aiff, aifc, next und wave. sfinfo versucht zu ermitteln, welches Format eine Audio-Datei nutzt.

Wenn Sie bei der Konvertierung von Audio-Dateien mehr Komfort wünschen, werden Sie vielleicht am Gnome-Programm SoundConverter Gefallen finden. Es konvertiert alle zuvor ausgewählten Audio-Dateien in das mit mit Bearbeiten • Einstellungen gewählte Format, standardmäßig Ogg-Vorbis. Die neuen Dateien werden im selben Verzeichnis wie die Ursprungsdateien gespeichert, erhalten aber natürlich eine neue Endung, also beispielsweise *.ogg.

Das Kommando ffmpeg aus dem gleichnamigen Paket konvertiert Audio- und Video-Dateien von einem Format in ein anderes. Die Liste der unterstützten Formate ist lang und kann mit ffmpeg -formats ermittelt werden.

Bei der Angabe von Optionen müssen Sie beachten, dass diese für die als Nächstes angegebene Datei gelten. Die Reihenfolge der Optionen ist daher entscheidend für die korrekte Funktion des Kommandos. Soweit Sie keine abweichenden Einstellungen vornehmen, verwendet ffmpeg für die Ergebnisdatei dieselben Codecs und Einstellungen wie in der Quelldatei und vermeidet so nach Möglichkeit Qualitätsverluste. Im folgenden Beispiel erstellt ffmpeg eine Filmdatei in DVD-Auflösung:

user$ ffmpeg -i in.avi out.mpg user$ ffmpeg -i in.avi -y -target pal-dvd out.avi

ffmpeg eignet sich auch dazu, Audio- und Video-Daten zum Brennen einer eigenen DVD aufzubereiten. Ein entsprechendes Beispiel gibt man ffmpeg. Wenn Sie sich die vielen ffmpeg-Optionen nicht merken wollen, können Sie zur Umwandlung von Video-Dateien auch eine grafische Benutzeroberfläche verwenden, z.B. winff.

Einige Versionen von Debian und Ubuntu bieten anstelle von ffmpeg das Paket libav-tools an. Das darin enthaltene Kommando avconv ist zu ffmpeg weitestgehend kompatibel. libav ist eine Abspaltung des ffmpeg-Projekts, zu der es nach einem Streit unter ffmpeg-Entwicklern gekommen war. Eine Weile war libav die besser gepflegte Bibliothek. Debian wird mit Version 9 aber voraussichtlich zurück zu ffmpeg wechseln. Bis dahin können Debian-Anwender ffmpeg aus der Paketquelle deb-multimedia installieren:

http://www.deb-multimedia.org

Eine Alternative zu ffmpeg/avconv ist das Kommando mencoder. Es verwendet dieselbe Code-Basis wie der Video-Player MPlayer und wird zusammen mit diesem installiert. mencoder kommt mit allen Audio- und Video-Formaten zurecht, die auch von MPlayer unterstützt werden.