Wenn ich Thunar verwende, füge ich benutzerdefinierten Aktionen gerne Befehlszeilen hinzu, wie die hier gezeigtenHier,HierUndHierum Audio aus Videos zu extrahieren. Ich meineohne Transkodierung/Veränderung des Tons, einfach aus dem Video herausnehmen(Ein FLV- oder MP4-Video ist beispielsweise eine AAC-Audiodatei, die nicht als solche abgespielt werden kann, sondern in eine M4A-Datei umgewandelt werden muss, wie im Befehl in den geposteten Links. Ein WebM-Video hat eine OGG-Audiodatei, die extrahiert werden muss.)
Jetzt verwende ich elementayOS und werde weder Thunar noch Nautilus verwenden, sondern nur Pantheon-Files.
Ich möchte wissen, ob es eine GUI-Lösung gibt, um dies zu erreichen.
Antwort1
Befehlszeile
Wenn Sie auf die Verwendung einer GUI verzichten möchten, können Sie ffmpeg
dies relativ einfach tun.
Beispieldatei
Wenn du nach ... gehstQuickTime: Beispieldateienkönnen Sie diese Beispieldatei herunterladen,Beispiel_mpeg4.mp4. Nach dem Download entpacken Sie es.
$ ls -l | grep sample
-rw-rw-r-- 1 saml saml 235829 Nov 4 2005 sample_mpeg4.mp4.zip
-rw-r--r-- 1 saml saml 245779 Nov 3 2005 sample_mpeg4.mp4
Beispiel
Sie können das AAC-Audio aus der MP4-Datei extrahieren.
$ ffmpeg -i sample_mpeg4.mp4 -vn -acodec copy sample_mpeg4.aac
FFmpeg version 0.6.3-rpmfusion, Copyright (c) 2000-2010 the FFmpeg developers
built on May 5 2011 19:20:01 with gcc 4.5.1 20100924 (Red Hat 4.5.1-4)
...
...
Output #0, adts, to 'sample_mpeg4.aac':
Metadata:
encoder : Lavf52.64.2
Stream #0.0(eng): Audio: aac, 32000 Hz, stereo, 48 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop encoding
size= 31kB time=4.99 bitrate= 50.4kbits/s
video:0kB audio:30kB global headers:0kB muxing overhead 3.594943%
Die resultierende AAC-Datei.
$ ls -l |grep sample
-rw-rw-r-- 1 saml saml 31468 Oct 4 22:09 sample_mpeg4.aac
-rw-r--r-- 1 saml saml 245779 Nov 3 2005 sample_mpeg4.mp4
-rw-rw-r-- 1 saml saml 235829 Nov 4 2005 sample_mpeg4.mp4.zip
Sie können ffmpeg
das Dateiformat auch bestätigen mit:
$ ffmpeg -i sample_mpeg4.aac
...
...
Input #0, aac, from 'sample_mpeg4.aac':
Duration: 00:00:05.59, bitrate: 45 kb/s
Stream #0.0: Audio: aac, 32000 Hz, stereo, s16, 45 kb/s
At least one output file must be specified
Benutzeroberfläche
Sie könnenVLCund die Konvertierungs-/Streaming-Funktion dazu. Nach dem Starten von VLC.
Beispiel
Wählen Sie „Konvertieren/Speichern aus dem Pulldown-Menü Datei“
Videodatei auswählen und Stream konvertieren
Konvertierung starten
Antwort2
Besser als zu versuchen, Kontextmenübefehle zu den minimalistischen Pantheon-Dateien von Elementary OS hinzuzufügen oder andere Medienanwendungen zum Extrahieren von Ton aus Videos zu verwenden, ist meiner Meinung nach die Installation von Nautilus (im Gegensatz zu Thunar, das mit der gesamten Xfce-Umgebung geliefert wird, ist dies unter eOS überhaupt nicht problematisch).
sudo apt-get install nautilus
Dann installierenNautilus-Actions-Konfigurationstoolund öffne es..
Ich werde ein Beispiel zum Extrahieren von Audio (AAC in M4A-Container) aus FLV- und MP4-Videodateien bereitstellen.
Definieren Sie eine neue Aktion, geben Sie ihr einen Namen und ggf. auch ein Symbol. Aktivieren Sie „Aktion im Auswahlkontextmenü anzeigen“.
Fügen Sie unter der Registerkarte „Befehl“ den Befehl hinzu
bash -c 'ffmpeg -i "$0" -map 0:1 -c:a copy "${0%%.*}".m4a' %f
.
Unter der Registerkarte „Ausführung“ können Sie Optionen auswählen, je nachdem, was Sie während und nach der Aktion sehen möchten (Terminal öffnen, Bericht).
UnterMimetypenGeben Sie auf der Registerkarte die Filter für die Dateitypen ein, in deren Kontextmenü Sie den Befehl sehen möchten – in diesem Fall: video/mp4
und video/flv
.
Es gibt noch weitere Optionen, aber für den Zweck meiner Frage scheinen diese ausreichend zu sein.
Ähnliche Aktionen können hinzugefügt werden, um Ton aus anderen Videotypen und natürlich auch für andere, ganz unterschiedliche Zwecke zu extrahieren.
(Diese Lösung basiert auf Vorschlägen und Lösungen in den bereits in der Frage geposteten Links und der Verdienst gebührt den Autoren.)
Kann auch in benutzerdefinierten Thunar-Aktionen verwendet werden.
Meine ursprüngliche Quelle istDas.
Antwort3
Ich habe eine gute Lösung:
#!/bin/bash
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
find $1 -iname "*" -a -type f -exec ffmpeg -y -i {} {}.mp3 \;
# restore $IFS
IFS=$SAVEIFS
Sie sollten anrufen:
./myscript.sh youroootpathofvideos
Antwort4
Wählen Sie den Abschnitt „Tracks“
Identifizieren Sie die Audiospur, die als separate Datei extrahiert werden soll.