Audio aus Video extrahieren mit MPlayer: Unterschied zwischen den Versionen
(Typos) |
(lol, was fuern legastheniker hat das denn verbrochen?) |
||
Zeile 1: | Zeile 1: | ||
Gelegentlich wünscht man sich, eine Audiospur aus einem Video zu extrahieren. Dies ist eine kleine Anleitung dies mit [[MPlayer]] zu tun. | |||
== Mittels -dumpaudio (verlustfrei) == | == Mittels -dumpaudio (verlustfrei) == | ||
Zeile 16: | Zeile 16: | ||
== Mittels -ao pcm (meist verlustbehaftet) == | == Mittels -ao pcm (meist verlustbehaftet) == | ||
Die option <code>-ao</code> dient dazu, den Audio Output Treiber auszuwaehlen. Normalerweise sollte das auf [[OSS|oss]], [[ALSA|alsa]] oder [[ESD|esd]] stehen. Es gibt aber auch einen Output Treiber ''pcm'', der dazu dient, [[PCM]] (''Wave'') Files zu schreiben. Er kann dies sowohl mit als auch ohne [[PCM]] Header. Hier soll dieses Output genutzt werden, um einem Audio Encoder zuzufueren. In unserem Falle [[oggenc]] dem Standard [[OGG]] [[Vorbis]] Encoder. Es kann aber auf ähnliche Weise auch [[flac]] ([[ | Die option <code>-ao</code> dient dazu, den Audio Output Treiber auszuwaehlen. Normalerweise sollte das auf [[OSS|oss]], [[ALSA|alsa]] oder [[ESD|esd]] stehen. Es gibt aber auch einen Output Treiber ''pcm'', der dazu dient, [[PCM]] (''Wave'') Files zu schreiben. Er kann dies sowohl mit als auch ohne [[PCM]] Header. Hier soll dieses Output genutzt werden, um einem Audio Encoder zuzufueren. In unserem Falle [[oggenc]] dem Standard [[OGG]] [[Vorbis]] Encoder. Es kann aber auf ähnliche Weise auch [[flac]] ([[FLAC]] Encoder) oder ähnliche genutzt werden. | ||
=== Vorteile / Nachteile === | === Vorteile / Nachteile === | ||
Zeile 26: | Zeile 26: | ||
$ oggenc audiodump.wav -o myaudio.ogg | $ oggenc audiodump.wav -o myaudio.ogg | ||
$ rm audiodump.wav | $ rm audiodump.wav | ||
Dieses Verfahren braucht allerdings recht viel Platz auf dem Datenträger, da die | Dieses Verfahren braucht allerdings recht viel Platz auf dem Datenträger, da die Audiodaten komplett unkomprimiert zwischengelagert werden. | ||
'''Fall 2:''' Hier wird ein [[FIFO]] eingesetzt, um sich die temporäre Datei zu sparen. | '''Fall 2:''' Hier wird ein [[FIFO]] eingesetzt, um sich die temporäre Datei zu sparen. | ||
Zeile 34: | Zeile 34: | ||
$ rm audiodump.wav | $ rm audiodump.wav | ||
'''Hinweis:''' Es kann zu deutlichem Geschwindigkeitszuwachs kommen, wenn MPlayer die option ''-vc dummy'' | '''Hinweis:''' Es kann zu deutlichem Geschwindigkeitszuwachs kommen, wenn MPlayer die option ''-vc dummy'' zusätzlich mit übergeben wird. Diese schaltet das Dekodieren der Videodaten ab. Dies führt aber ggf. zu Problemen. | ||
{{Stub}} | {{Stub}} | ||
[[Kategorie:Multimedia]] | [[Kategorie:Multimedia]] |
Version vom 18. März 2012, 19:20 Uhr
Gelegentlich wünscht man sich, eine Audiospur aus einem Video zu extrahieren. Dies ist eine kleine Anleitung dies mit MPlayer zu tun.
Mittels -dumpaudio (verlustfrei)
Mittels der Option -dumpaudio
kann man mplayer dazu bewegen, einen Audio Channel raw in ein File zu dumpen.
Vorteile / Nachteile
Der Vorteil liegt darin, dass nicht de- und neu encodiert wird. Dadurch gibt es keinen Qualitätsverlust bei verlustbehafteten Codecs. Der Nachteil ist, dass der Audio Player, mit dem das File später wieder abgespielt werden soll, diesen Codec unterstützen muss, dies ist nicht zwangsläufig der Fall. Bei Videos im OGG Format bestehen jedoch gute Chancen, ein sinvolles Ergebnis zu bekommen (Da meist Vorbis oder FLAC Audiospur) und bei Videos die als MPEG abgelegt sind (Der Audio Channel ist ein valider MP2/3 Stream).
Die Option -dumpfile
kann genutzt werden, um anzugeben, wie das neue File heißen soll.
Beispiel
$ mplayer -dumpaudio -dumpfile myaudio.ogg myvideo.ogg $ mplayer -dumpaudio -dumpfile myaudio.mp3 myvideo.mpg
Mittels -ao pcm (meist verlustbehaftet)
Die option -ao
dient dazu, den Audio Output Treiber auszuwaehlen. Normalerweise sollte das auf oss, alsa oder esd stehen. Es gibt aber auch einen Output Treiber pcm, der dazu dient, PCM (Wave) Files zu schreiben. Er kann dies sowohl mit als auch ohne PCM Header. Hier soll dieses Output genutzt werden, um einem Audio Encoder zuzufueren. In unserem Falle oggenc dem Standard OGG Vorbis Encoder. Es kann aber auf ähnliche Weise auch flac (FLAC Encoder) oder ähnliche genutzt werden.
Vorteile / Nachteile
Der Vorteil ist, dass hier der Codec, in dem der Audio Channel im Video vorliegt, egal ist, da wir ja die Daten neu encoden. Der Nachteil ist, dass bei Verwendung eines verlustbehafteten Audio Codecs die Qualität abnimmt. Aus diesem Grunde ist die obige Vorgehensweise stark empfohlen.
Beispiel
Fall 1: Das Video wird komplett decodiert und MPlayer schreibt die Datei audiodump.wav mit unseren Audiodaten. Diese Datei wird im zweiten Schritt neu encodet und im dritten Schritt gelöscht, da wir sie nicht mehr brauchen.
$ mplayer -ao pcm -vo null myvideo.ogg $ oggenc audiodump.wav -o myaudio.ogg $ rm audiodump.wav
Dieses Verfahren braucht allerdings recht viel Platz auf dem Datenträger, da die Audiodaten komplett unkomprimiert zwischengelagert werden.
Fall 2: Hier wird ein FIFO eingesetzt, um sich die temporäre Datei zu sparen.
$ mkfifo audiodump.wav $ mplayer -ao pcm -vo null myvideo.ogg $ oggenc audiodump.wav -o myaudio.ogg $ rm audiodump.wav
Hinweis: Es kann zu deutlichem Geschwindigkeitszuwachs kommen, wenn MPlayer die option -vc dummy zusätzlich mit übergeben wird. Diese schaltet das Dekodieren der Videodaten ab. Dies führt aber ggf. zu Problemen.
Dieser Artikel ist leider sehr kurz. Also: Sei mutig und mache aus ihm bitte einen guten Artikel, wenn du mehr zum Thema „Audio aus Video extrahieren mit MPlayer” weißt.