Die Umwandlung von Audiodateien eines bestimmten Formats in ein beliebiges anderes Format ist unter Linux in der Regel kein Problem – schwierig wird es eventuell nur dann, wenn es sich um exotische und/oder lizenzrechtlich geschützte Formate (Codecs) handelt.
Für die gängigen Formate wie Ogg/Vorbis, MP3, FLAC und WAV gibt es zahlreiche Programme mit grafischer Oberfläche, die die Umwandlung komfortabel machen. Programme, mit denen CDs ausgelesen (gerippt) und in verschiedenen Formaten abgespeichert werden können, werden im Artikel CDs rippen vorgestellt.
Viele Audioformate arbeiten „verlustbehaftet“ und verringern beim Umwandeln mehr oder weniger stark die Klangqualität. Wird eine Audiodatei von einem verlustbehafteten Format in ein anderes konvertiert (z.B. vom MP3 in Vorbis), wird die Qualität immer durch Generationsverlust verschlechtert. Ist das Quellformat jedoch ein verlustfreies (z.B. FLAC), besteht diese Gefahr nicht.
Für das inzwischen veraltete, aber besonders für Bootlegs noch genutzte Format Shorten (.shn) findet sich eine Anleitung zur Codec-Installation unter xcfa.
Damit die Umwandlung problemlos funktioniert und möglichst viele Dateiformate unterstützt werden, müssen zunächst einige Pakete installiert [1] werden:
faac (multiverse)
faad (universe)
flac
lame (universe)
libmad0
libmpcdec6
mppenc (universe)
vorbis-tools
wavpack (universe)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install faac faad flac lame libmad0 libmpcdec6 mppenc vorbis-tools wavpack
sudo aptitude install faac faad flac lame libmad0 libmpcdec6 mppenc vorbis-tools wavpack
Audacity ist ein freier, leicht zu bedienender und sehr mächtiger Audioeditor und -recorder für GNU/Linux, Mac OS X, Windows und andere Betriebssysteme.
FF Multi Converter ist eine übersichtlich gehaltene grafische Oberfläche, die sich zum Konvertieren von Audio-, Video-, Bild- und Dokument-Dateien eignet und die meisten populären Formate unter einer Anwendung unterstützt. Zum Konvertieren wird FFmpeg für Audio-/Video-Dateien, unoconv für Dokument-Dateien sowie ImageMagick für Bilder verwendet. Geschrieben in Python und Qt unterliegt diese Anwendung der GPL3 und gilt damit als freie Software.
Praktisch wie FF Multi Converter nutzbar, aber keine Umwandlung von Dokumenten. Damit ist Format Junkie vom Funktionsumfang fast identisch mit diesem, wird aber als unabhängiges Projekt geführt.
gnormalize ist nicht nur ein Programm zur Umwandlung von Audiodateien, sondern auch ein CD-Ripper und -Player. Außerdem ist das Programm zur Normalisierung von Audiodateien geeignet.
mhWaveEdit ist ein schlanker und unkompliziert zu bedienender Audio-Editor, der Audio-Dateien in alle gängigen Formate umwandeln kann.
MP3Gain ermöglicht das Anpassen des Lautstärke-Niveaus von MP3-Dateien, ohne diese neu kodieren zu müssen. Da es sich um ein reines Kommandozeilenprogramm handelt, sind im Laufe der Zeit mehrere grafische Oberflächen entstanden: MP3Gain-GUI.
Mit mp3splt kann man Dateien in den Format MP3 oder Ogg/Vorbis schneiden, ohne sie neu kodieren zu müssen.
OggConvert ist ein auf GStreamer basierendes Programm, welches für die Konvertierung diverser Audioformate nach Ogg/Vorbis eingesetzt werden kann.
Soundconverter hat eine einfache und selbsterklärende Oberfläche. Es unterstützt die Dateitypen MP3, Ogg/Vorbis, FLAC, WMA und WAV. Über das teilweise deutschsprachige Menü können verschiedene Einstellungen wie Dateiformat, Qualität (Bitrate) der Zieldatei, Speicherort usw. ausgewählt werden. Über die entsprechenden Knöpfe können dann einzelne Dateien oder ganze Ordner zur Umwandlung ausgewählt werden.
soundKonverter (mit K) ist ein Programm zur Umwandlung von Audiodateien für den KDE-Desktop. Es lassen sich auch CDs rippen. Außerdem besteht für bestimmte Formate die Möglichkeit, Replay Gain zu den Dateien zu berechnen.
traGtor ist eine grafische Oberfläche zum Konvertieren diverser Medienformate mittels FFMpeg bzw. Libav. traGtor hat sich zum Ziel gesetzt, eine grafische Benutzeroberfläche für die schnelle Konvertierung einzelner Mediendateien zu bieten und möglichst ohne Benutzung der Kommandozeile dem Benutzer einen Großteil der wichtigsten Funktionen und Optionen zur Verfügung zu stellen. Sehr lehrreich, da die jeweils verwendeten Optionen nicht – wie bei anderen Programmen üblich – vor dem Benutzer versteckt werden.
audio-convert ist ein Skript, das sich in den Dateimanager Nautilus integriert und die einfache Umwandlung von Audiodateien über das Kontextmenü ermöglicht. Es müssen die folgenden Pakete installiert werden:
nautilus-script-audio-convert (universe)
mplayer (universe)
nautilus-script-manager (universe )
mit apturl
Paketliste zum Kopieren:
sudo apt-get install nautilus-script-audio-convert mplayer nautilus-script-manager
sudo aptitude install nautilus-script-audio-convert mplayer nautilus-script-manager
Das Skript muss zunächst als Plugin für Nautilus registriert werden. Dazu dient der folgende Befehl im Terminal [3]:
nautilus-script-manager enable ConvertAudioFile
Abschließend muss Nautilus neu gestartet werden:
nautilus -q
Wählt man nun in Nautilus eine Audiodatei aus und klickt diese mit der rechten Maustaste an, kann man über "Scripts -> ConvertAudioFile" das gewünschte Zielformat wählen. Unterstützt werden die Formate MP3, Ogg/Vorbis, MPC, AAC und WAV. Danach kann man angeben, ob man die Metatags der Datei auf die neue Datei übertragen will. Anschließend kann die Qualität festgelegt werden. Als Zielordner wird grundsätzlich der Ordner der Quelldatei benutzt.
Falls nach der Installation im Kontextmenü unter "Scripts" nichts zu sehen ist, könnte es daran liegen, dass das Skript im falschen Verzeichnis liegt, wie im Artikel Nautilus/Skripte angedeutet. Dann hilft es, das Skript von ~/.gnome2/nautilus-scripts/ nach ~/.local/share/nautilus/scripts/ zu kopieren.
audiokonverter (man beachte das k) ist ein Skript, mit dessen Hilfe sich aus dem Kontextmenü des KDE-Dateimanagers Konqueror heraus Audiodateien umwandeln lassen. Die Installation ist denkbar einfach. Die beiden folgenden Pakete sind unter KDE standardmäßig installiert, unter anderen Oberflächen müssen sie nachinstalliert [1] werden:
konqueror
konsole
mit apturl
Paketliste zum Kopieren:
sudo apt-get install konqueror konsole
sudo aptitude install konqueror konsole
Während der Installation unter einer anderen Desktop-Umgebung als KDE werden u.U. noch weitere Pakete benötigt.
Nun lädt man audiokonverter von dessen Homepage herunter und entpackt [4] die Datei in das eigene Homeverzeichnis. In einem Terminal [3] wechselt man in den gerade entpackten Ordner und führt dort zur Installation folgenden Befehl aus:
sudo ./install.sh
Die Installation sollte selbsterklärend sein. Klickt man nun im Konqueror eine (unterstützte) Audiodatei mit der rechten Maustaste an, kann man unter "Aktionen -> umwandeln in" den Zieltyp der Datei wählen. Unterstützt werden die Formate MP3, Ogg/Vorbis, M4a, FLAC und WAV. Während der Umwandlung wird man nach dem gewünschten Zielverzeichnis gefragt.
Folgende Programme werden im Terminal [3] ausgeführt.
Mit dem in swftools enthaltenen swfextract kann man aus swf-Datein (flash) den Audio-Stream extrahieren.
FLAC ist ein Audio-Codec mit verlustfreier Komprimierung („Lossless Codec“). Im Gegensatz zu verlustbehafteten Verfahren („Lossy Codecs“) – wie beispielsweise Vorbis oder dem weit verbreiteten MP3 – ist es bei der Verwendung von FLAC möglich, das Audiomaterial auch nach dem Dekodieren ohne Qualitätseinbußen vollständig wiederherzustellen.
LAME ist ein plattformübergreifendes Open Source Projekt zur Erzeugung von MP3-Audiodateien, z.B. aus (unkomprimierten) WAV-Dateien.
faac ist ein Codec, welcher verlustbehaftet in das AAC-Format konvertiert. AAC ist Teil der MPEG-2 und MPEG-4 Spezifikation und kommt u.a. auf Apple-Geräten zum Einsatz. Im Vergleich zu MP3 sind mittels AAC bei gleicher Datenrate in der Regel bessere Qualitäten des komprimierten Audiomaterials erreichbar.
Der gleichnamige Befehl faac erwartet die Eingabedatei standardmäßig im .wav-Format. Der Befehlsaufruf für die Encodierung lautet dann im einfachsten Fall:
faac -o ausgabe.aac eingabe.wav
faac kennt eine Reihe von Optionen, die in der Man-Page nachgelesen werden können.
Um z.B. eine bestehende MP3-Dateien ins AAC-Format auf der Kommandozeile umzuwandeln kann die MP3-Datei mittels mpg123 abgespielt und der Datenstrom mittels faac nach AAC encodiert werden:
mpg123 -s input.mp3 | faac -P -X -w -o output.m4b -
Die vorbis-tools enthalten den Ogg/Vorbis-Encoder oggenc, den Decoder oggdec, den Ogg/Vorbis-Kommandozeilen-Player ogg123, das Werkzeug ogginfo zur Anzeige von Ogg/Vorbis-Metadaten, den Ogg/Vorbis-Datei-Splitter vcut und den Metadaten-Editor vorbiscomment.
Um Dateien vom Wave-Format ins Ogg/Vorbis-Format oder umgekehrt umzuwandeln, bietet oggenc folgende Befehlsoptionen:
oggenc -b 256 *.wav #alle Wave-Dateien werden mit der Bitrate 256 kbps umgewandelt
Alternativ zur Bitrate kann man vor der Ausführung des Befehls auch die gewünschte Qualität angeben (0-9
; 6
ist schon sehr gut):
oggenc stueck1.wav -q 6 -o track_001.ogg
Der Perl Audio Converter konvertiert eine Vielzahl von Formaten (auch das Extrahieren des Sounds aus Videoformaten ist möglich), bringt optional eine grafische Benutzeroberfläche mit und lässt sich in verschiedene Dateimanager einbinden.
Als Stapelverarbeitung oder Batch-Betrieb bezeichnet man die Konvertierung mehrerer Dateien in einem Rutsch. Das kann insbesondere auf der Kommandozeile sehr nützlich sein.
Sollen mehrere Dateien auf einmal umgewandelt werden, kann dies mit einem einzeiligen Shellskript sehr einfach erfolgen. Im folgenden allgemeinen Beispiel wird davon ausgegangen, dass mit dem Programm foobar alle Dateien im aktuellen Verzeichnis mit der Endung .ALT in Dateien mit der Endung .NEU im entsprechenden Format konvertiert werden:
for i in *.ALT; do foobar "$i" -o "`basename "$i" .ALT` .NEU"; done;
Benötigt das jeweilige Programm noch Optionen, so sind diese hinter dem Programmnamen einzufügen.
Beispiele:
Alle WAV-Dateien in das Format Ogg/Vorbis mit der Qualitätsstufe 6 umwandeln:
for i in *.wav; do oggenc "$i" -q 6 -o "`basename "$i" .wav` .ogg"; done;
MP3-Dateien mit der Qualitätsstufe medium
rekodieren. Dies kann z.B. sinnvoll sein, wenn man MP3-Dateien mit hoher Bitrate "kleiner" machen möchte:
for i in *.mp3; do lame --preset medium "$i" -o "`basename "$i" .mp3`_medium.mp3"; done;
Da sich hier weder Dateiendung noch Dateiname ändern, man aber die Ursprungsdateien nicht überschreiben will, wird hier zu dem Trick gegriffen, die Dateiendung „.mp3“ zu entfernen und anschließend nicht nicht nur eine neue Endung .mp3 angehängt wird, sondern zusätzlich auch noch der Dateiname um _medium erweitert wird. Die Syntax des Befehls ändert sich dadurch nicht.
M4a-enkodierte Dateien mit GStreamer in das MP3-Format umwandeln:
for i in *.m4a; do gst-launch-0.10 filesrc location="$i" ! faad ! audioconvert ! audio/x-raw-int,rate=44100,channels=2 ! lame name=enc mode=1 quality=2 vbr=0 bitrate=128 ! xingmux ! id3v2mux ! filesink location="`basename "$i" .m4a`.mp3"; done
Für alle Quelldateien mit der Endung .m4a wird hier gst-launch
mit der als Eingabe definierten Quelle ausgeführt. Anschließend wird die Datei mit den Codecs in Joint Stereo, Standardqualität und konstanter Bitrate von 128 kBit/s dekodiert und umgewandelt sowie der Dateinamen geändert. Die Originaldateien bleiben bestehen.
OGG-Dateien nach MP3 umwandeln:
for i in *.ogg; do oggdec -o - "$i" | lame -v - "`basename "$i" .ogg`".mp3; done
Mit der folgenden Zeile lassen sich auch leicht ganze Verzeichnisbäume durchlaufen, um so z.B. alle WAV-Dateien in das Ogg/Vorbis-Format umzuwandeln:
find ./ -iname '*.wav' -print0 | xargs -0 -n1 -P4 oggenc -q6
Der Befehl muss dabei in dem Ordner ausgeführt werden, der die anderen Unterordner enthält. Der Ogg/Vorbis-Encoder legt dabei in den entsprechenden Verzeichnissen neue Dateien mit demselben Dateinamen, aber neuer Endung .ogg an. Mit der Option -Pn
für xargs (n=1,2,3,...
) lassen sich n
Prozesse von oggenc parallel starten.
Ähnlich funktioniert das auch für MP3-Dateien mit dem Encoder lame:
find ./ -iname '*.wav' -print0 | xargs -0 -n1 -P4 lame --preset standard
Auch hier werden mit der Option -P4
vier Prozesse gestartet.
Eine weitere sehr bequeme Möglichkeit bietet das Programm dir2ogg mit den Parametern -d
(nur das übergebene Verzeichnis) und -r
(auch alle Unterverzeichnisse). Möchte man beispielsweise im Verzeichnis ~/Musik/klassik und allen Unterordnern zu allen Audiodateien der Formate MP3, WAV, M4a und WMA ein Ogg/Vorbis-Pendant erstellen, kann folgender Befehl verwendet werden:
dir2ogg -r ~/Musik/klassik/
Zum Extrahieren der Audio-Datei aus FLV-Dateien und der anschließenden Speicherung als MP3- oder Ogg/Vorbis-Datei gibt es den Wiki-Artikel Audiospur aus FLV Dateien extrahieren.
Das Format Real Audio wird hauptsächlich für Streams im Internet verwendet, z.B. von manchen Online-Radiosendern. Diese Streams kann man mit geeigneten Werkzeugen speichern. Abspielen lassen sich Real-Audio-Dateien unter Linux von vielen Playern, vorausgesetzt man hat den richtigen Codec installiert. In vielen Fällen möchte man jedoch Dateien im Format "Real Audio" (.ra) in ein gängiges Format wie MP3 oder WAV umwandeln, um sie z.B. auf CD zu brennen oder auf einem mobilen Abspielgerät zu nutzen.
Die Umwandlung ist unter Linux kein Problem. Hierfür bieten sich u.a. die Programme MPlayer und FFmpeg an. Beide benutzen für die Konvertierung in ein anderes Format die Codec-Bibliothek des folgenden Pakets:
libavcodec (universe)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install libavcodec
sudo aptitude install libavcodec
bzw.
libavcodec-extra (universe, enthält zusätzliche Codecs, ab Ubuntu 14.04)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install libavcodec-extra
sudo aptitude install libavcodec-extra
Dieses muss also, neben dem jeweiligen Programm, installiert [1] sein.
Die Umwandlung mit Hilfe von FFmpeg geschieht mit Hilfe des folgenden Befehls im Terminal [3]:
ffmpeg -i Quelldatei.rm Zieldatei.wav
Das -i
steht für input, also Eingabe. Bei der Zieldatei muss man neben dem gewünschten Namen natürlich auch die entsprechende Endung für das gewünschte Zielformat angeben.
Benutzt man den MPlayer, so ist die entsprechende Zeile etwas komplizierter aufgebaut:
mplayer -ao pcm:file=Zieldatei.wav Quelldatei.rm
Hier sind Quelldatei und Zieldatei genau anders herum angegeben. -ao
bedeutet audio output.
Das proprietäre Windows Media Audio-Format (.wma) von Microsoft findet man bei manchen Onlineshops, da es zu den Audioformaten gehört die DRM-fähig sind.
Um alle WMA-Dateien in einem Ordner in MP3-Dateien umzuwandeln, können die folgenden Kommandos vom Quellordner aus benutzt werden:
Zur Nutzung des MPlayers (die neu erzeugten Dateien sind ähnlich groß wie die Originaldatei) muss folgender Befehl angewandt werden:
for i in *.wma ; do mplayer -vo null -vc dummy -af resample=44100 -ao pcm:waveheader "$i" && lame --preset standard audiodump.wav -o "`basename "$i" .wma`.mp3"; done; rm -f audiodump.wav
CDs rippen Übersichtsartikel
Audiodateien per Perl-Skript umwandeln - Artikel LinuxUser 09/2006
Linux – Audio - Anleitungen zu verschiedenen Audio-Themen
Diese Revision wurde am 10. Januar 2017 14:59 von holger.schmeisky erstellt.