• „5G ja, aber mit geblockten Frequenzbereichen für die Industrie“ 13. Dezember 2018
    Wenige Wochen ist die Entscheidung der Frequenzvergabe für den 5G-Mobilfunk nun her, doch der mediale Rummel um das Thema scheint nicht abzuebben. Braucht man 5G für die Industrie oder reichen nicht auch andere, traditionelle oder bewährte Kommunikationsverfahren? Auch auf der SPS IPC Drives 2018 in Nürnberg war das ein Thema.
Know-how für alle

XBMC und Audio

XBMC und Audio

Als Alternative zu iTunes von Apple möchte ich hier die Möglichkeit von XBMC und Audio auf xUbuntu beschreiben.

Folgende Themen werden behandelt

  • Setup
  • Musikdatenbanken
  • Verzeichnisstruktur
  • Remote
  • Musikconverter

Tools

unter UBUNTU sind die besten Tools zur Soundconvertierung lame und soundconverter


sudo apt-get install lame

lame ist ein plattformübergreifendes Open Source Projekt zur Erzeugung von MP3-Audiodateien, z.B. aus (unkomprimierten) WAV-Dateien. Der Name LAME ist ein rekursives Akronym für "LAME Ain’t an MP3 Encoder", auf deutsch „LAME ist kein MP3-Encoder“. Der Name ist darauf zurückzuführen, dass LAME ursprünglich kein vollständiger Encoder, sondern nur ein Patch für die MP3-Beispielimplementierung war.

Hinweis:

Bei der Umwandlung in MP3 handelt es sich um ein verlustbehaftetes Verfahren. Wer eine verlustfreie Konvertierung bevorzugt, muss auf einen Audio-Codec wieFLAC ausweichen. Auch die Bitrate und interne Kompressionsverfahren wie CBR, VBR oder ABR spielen eine wichtige Rolle – hier sollte man sich vorab informieren.

Anwendungsbeispiele

 

MP3-Dateien mit statischer Bitrate

Der typische Anwendungsfall ist, dass man eine unkomprimierte Datei, z.B. eine WAV-Datei, die man aus einer Audio-CD extrahiert hat, in eine MP3 umwandeln möchte. Das folgende Beispiel wandelt eine WAV-Datei „Lied.wav“ in eine MP3-Datei mit hoher Qualität (-h) und einer statischen Bitrate von 192 kbit/s (-b) um:

lame -h -b 192 Lied.wav Lied.mp3

Der Befehl führt zu folgender Ausgabe:

 

LAME 3.98.4 64bits (http://www.mp3dev.org/)
Using polyphase lowpass filter, transition band: 20094 Hz - 20627 Hz
Encoding Lied.wav to Lied.mp3
Encoding as 44.1 kHz single-ch MPEG-1 Layer III (3.7x) 192 kbps qval=2
    Frame          |  CPU time/estim | REAL time/estim | play/CPU |    ETA 
    17/17    (100%)|    0:00/    0:00|    0:00/    0:00|   7.4014x|    0:00 
-------------------------------------------------------------------------------
   kbps       mono %     long  %
  192.0      100.0       100.0
Writing LAME Tag...done
ReplayGain: +9.3dB

 

MP3-Dateien mit variabler Bitrate

Möglich ist auch, MP3s mit variabler Bitrate zu erstellen. Die erzeugten Dateien sind oft kleiner, beim De-/Kodieren entsteht aber ein höherer Rechenaufwand. Zudem haben manche ältere MP3-Player Probleme mit variablen Bitraten.

Der folgende Befehl erzeugt eine MP3 mit einer variablen Bitrate mit höchster Qualität (-V0, die Null steht für die höchste Qualitätsstufe):

lame -V0 Lied.wav Lied.mp3

Fremdformat (M4A/AAC) zu MP3

Teilweise muss die Quelldatei zunächst selbst dekodiert werden. Handelt es sich um eine MPEG4/AAC-komprimierte Datei (Dateierweiterung meist .m4a), ist diese mit faad (evtl. nachinstallieren) zu dekodieren und über eine Pipe an den Befehl lame weiterzugeben:

faad -o - "Lied.m4a" | lame -V2 - Lied.mp3

Weitere Fremdformate zu MP3

Soweit die Quelldatei sich in einem anderen Format befindet und erst dekodiert werden muss, empfiehlt sich die Verwendung des Multimedia-Frameworks GStreamer, das die Audiodaten an LAME weitergibt. Mehr dazu im Artikel GStreamer.

Mehrere Dateien verarbeiten (Stapelverarbeitung)

Will man nicht jede Datei einzeln kodieren, sondern mehrere in einem Verzeichnis (Batch), kann man ein Shell-internes Konstrukt in Form einer Schleife verwenden. Das folgende Beispiel wandelt alle Dateien mit der Endung .wav in eine MP3 um:

for i in *.wav; do lame -h -b 192 "$i" "`basename "$i" .wav`".mp3; done

Um alle M4A-Dateien in einem Ordner in MP3-Dateien umzuwandeln, reicht dieser Befehl:

for file in *.m4a; do faad -o - "$file" | lame -V2 - "$(basename "$file" .m4a).mp3"; done

 

 Allgemeines zu Audioumwandlung

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.

Hinweis:

Die Umwandlung einer nicht verlustfrei komprimierten Audiodatei in ein anderes Format ist in der Regel mit mehr oder minder starken Qualitätsverlusten verbunden. Insbesondere gilt das, wenn das Ausgangsformat bereits eine niedrige Bitrate aufweist. Für qualitativ hochwertige Ergebnisse sollte man daher von der Umwandlung einer bereits komprimierten Datei Abstand nehmen, solange beim Ausgangsmaterial kein verlustfreier Codec wieFLAC oder WavPack eingesetzt wurde.

Für das inzwischen veraltete, aber besonders für Bootlegs noch genutzte Format Shorten {en} (.shn) findet sich eine Anleitung unter Shorten Audio Codec umwandeln.

Voraussetzungen

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)

Paketliste zum Kopieren: apt-get aptitude

sudo apt-get install faac faad flac lame libmad0 libmpcdec6 mppenc vorbis-tools wavpack

 

 

Programme mit grafischer Oberfläche

 

Audacity

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

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 sowieImageMagick für Bilder verwendet. Geschrieben in Python und Qt unterliegt diese Anwendung der GPL3 und gilt damit als freie Software.

Format Junkie

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

gnormalize ist nicht nur ein Programm zur Umwandlung von Audiodateien, sondern auch ein CD-Ripper und -Player. Außerdem ist das Programm zurNormalisierung von Audiodateien geeignet.

mhWaveEdit

mhWaveEdit ist ein schlanker und unkompliziert zu bedienender Audio-Editor, der Audio-Dateien in alle gängigen Formate umwandeln kann.

MP3Gain

MP3Gain ermöglicht das Anpassen des Lautstärke-Niveaus von MP3-Dateien, ohne diese neu kodieren zu müssen.

mp3splt

Mit mp3splt kann man Dateien im Format MP3 oder Ogg/Vorbis schneiden, ohne sie neu kodieren zu müssen.

Vorbis/oggconvert.png

OggConvert

OggConvert ist ein auf GStreamer basierendes Programm, welches für die Konvertierung diverser Audioormate nach Ogg/Vorbis eingesetzt werden kann.

 

Soundconverter

Soundconverter hat eine einfache und selbsterklärende Oberfläche. Es unterstützt die Dateitypen Ogg/VorbisMP3FLACWMA 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.png
soundKonverter

 

soundKonverter

soundKonverter 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

traGtor ist eine grafische Oberfläche zum Konvertieren diverser Medienformate mittels FFmpeg.

xcfa

xcfa (X Convert File Audio) konvertiert u.a. WAVFLACMonkey’s Audio (ape), WavPackOgg/VorbisM4aAACMpc und MP3.

Skripte für Dateimanager

 

audio-convert

audio-convert {en} ist ein Skript, das sich in den Gnome-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)

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren: apt-get aptitude

sudo apt-get install nautilus-script-audio-convert mplayer

 

 

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 MP3Ogg/VorbisMPCAAC 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.

audiokonverter

audiokonverter {en} (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

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren: apt-get aptitude

sudo apt-get 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 {en} {dl} 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 MP3Ogg/VorbisM4aFLAC und WAV. Während der Umwandlung wird man nach dem gewünschten Zielverzeichnis gefragt.

Kommandozeile

 

SoX

SoX ist ein sehr leistungsfähiger Audiokonverter und Effektfilter für die Kommandozeile bzw. die Konsole.

FLAC

FLAC ist ein Audio-Codec mit verlustfreier Komprimierung („Lossless Codec“). Im Gegensatz zu verlustbehafteten Verfahren („Lossy Codecs“) – wie beispielsweiseVorbis 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

LAME ist ein plattformübergreifendes Open Source Projekt zur Erzeugung von MP3-Audiodateien, z.B. aus (unkomprimierten) WAV-Dateien.

vorbis-tools

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 Kommentar-Editor vorbiscomment.

Um Dateien vom Wave-Format ins Ogg/Vorbis-Format oder umgekehrt umzuwandeln, bietet oggenc folgende Befehlsoptionen:

WAV zu Ogg/Vorbis

 

oggenc -b 256 *.wav        #alle Wave-Dateien werden mit der Bitrate 256 kbps umgewandelt

Alternativ zu Bitraten kann man bei vor der Ausführung des Befehls oggenc auch eine gewünschte Qualität angeben (0-9)6 ist schon sehr gut:

oggenc stueck1.wav -q 6 -o track_001.ogg

Ogg/Vorbis zu WAV

 

oggdec *.ogg               #alle Ogg-Dateien in Wave umwandeln

Weiterführende Informationen findet man im Artikel Vorbis.

Perl Audio Converter

Der Perl Audio Converter konvertiert eine Vielzahl von Formaten (auch das Extrahieren des Sounds aus Videoformaten ist möglich), bringt optional eine graphischer Benutzeroberfläche mit und lässt sich in KDE4 einbinden.

Real Audio umwandeln

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 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)

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren: apt-get aptitude

sudo apt-get install libavcodec

 

 

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.

WMA

Das proprietäre Windows Media Audio-Format (kurz 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:

MPlayer

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

ffmpeg

Zur Nutzung von FFmpeg (die neu erzeugten MP3-Dateien haben nur noch ca. 33% der Original-WMA-Dateigröße) muss folgender Befehl angewandt werden und müssen die entsprechenden Codecs installiert sein:

find . -name "*.wma" -exec ffmpeg -i {} {}.mp3 \;

Mehrere Dateien auf einmal umwandeln

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 Encoder PROG 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 PROG "$i" -o "`basename "$i" .ALT` .NEU"; done;

Benötigt PROG noch Optionen, so sind diese an der entsprechende Stelle einzufügen.

Beispiele:

Im ersten Beispiel werden alle WAV-Dateien in das Format Ogg/Vorbis mit der Qualitätsstufe 6 umgewandelt:

for i in *.wav; do oggenc "$i" -q 6 -o "`basename "$i" .wav` .ogg"; done;

Im zweiten Beispiel werden MP3-Dateien gelesen und mit lame in die Qualitätsstufe „medium“ rekodiert. 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 noch der Dateiname um „_medium“ erweitert wird. Die Syntax des Befehls ändert sich dadurch nicht.

Eventuell muss man auf die etwas aufwändigeren GStreamer-Kommandozeile zurückgreifen um z.B. mit M4a-enkodierte Dateien in das MP3-Formaat umzuwandeln.

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 Input-Dateien mit der Endung m4a wird hier gst-launch mit der als Input definierten Quelle ausgeführt. Anschließend wird die Datei mit den Codecs in Joint Stereo, Standardqualität, konstante Bitrate von 128 kb/s dekodiert und umgewandelt sowie der Dateinamen geändert. Die Originaldateien bleiben bestehen.

Mehrere Dateien auf einmal umwandeln (mit Unterverzeichnissen)

Mit der folgenden Zeile lassen sich auch leicht ganze Verzeichnisbäume durchlaufen, um so alle WAV-Dateien in das Ogg/Vorbis-Format umzuwandeln:

find ./ -iname '*.wav' -print0 | xargs -0 -n1 oggenc -q6

Der Befehl muss an der Wurzel des Verzeichnisbaums ausgeführt werden. 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 sogar n Prozesse von oggenc parallel starten.

Ähnlich funktioniert das auch für MP3-Dateien mit dem lame-Encoder:

find ./ -iname '*.wav' -print0 | xargs -0 -n1 -P4 lame --preset standard

Hier werden dank der Option -P4 vier Prozesse von lame parallel gestartet. Allerdings ersetzt lame (im Gegensatz zu oggenc) nicht die Dateiendung, sondern hängt einfach ein „.mp3“ an den alten Namen. Die Dateinamen müssten nachträglich also noch geändert werden (bspw. mit dem Befehl rename).

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 MP3WAVM4a und WMA ein Ogg/Vorbis-Pendent erstellen, kann folgender Befehl verwendet werden:

dir2ogg -r ~/musik/klassik/

Problembezogene Anleitungen

 

Audiospur aus FLV-Dateien extrahieren

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.

There are no comments

Leave a Reply

Sport's by Runnerinn

Trek Bike TrekkInn FR

Tennis Smashinn

Count per Day
  • 78Besucher heute: