GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Die nützlichsten FFmpeg-Befehle für die Audio- und Videokonvertierung

FFmpeg ist ein kostenloses Open-Source-Softwareprojekt, das aus einer großen Suite von Bibliotheken und Programmen zum Umgang mit Video-, Audio- und anderen Multimediadateien und -streams besteht. Es ist ein plattformübergreifender Satz von Tools, die auf Mac (OSX), Linux und Windows funktionieren. Dieser Artikel behandelt die FFmpeg-Installation und die am häufigsten verwendeten Befehlsbeispiele zum Abrufen von Videoinformationen, zum Schneiden und Aufteilen von Videodateien, zum Konvertieren von Videos in verschiedene Formate, einschließlich Bilder, zum Verwalten von Audio, Untertiteln und vielem mehr.

Installation des FFmpeg-Multimedia-Frameworks

Die Installation von FFmpeg ist für die meisten gängigen Betriebssysteme einfach und unkompliziert.

Ubuntu

Verwenden Sie die folgenden Befehle, um FFmpeg auf dem neuesten Ubuntu Linux zu installieren:

sudo apt-get update
sudo apt install ffmpeg -y

OSX

Wenn Sie FFmpeg auf Ihrem Mac installieren möchten, verwenden Sie den Homebrew-Paketmanager:

brew update && brew upgrade ffmpeg

Windows

Um FFmpeg unter Windows zu installieren, verwenden Sie Chocolatey:

choco install ffmpeg

Die nützlichsten FFmpeg-Befehle

Jetzt, sobald Sie FFmpeg installiert haben, können wir zu den am häufigsten verwendeten Befehlsbeispielen springen.

Für diesen Artikel verwenden wir kostenlose Beispielvideodateien.

Videodateiinformationen abrufen

Um detaillierte Informationen über die Videodatei zu erhalten, führen Sie den folgenden Befehl aus:

ffmpeg -i sample-mp4-file.mp4 -hide_banner

Das -hide_banner Argument verbirgt Copyright-Informationen.

Video in kleine Clips schneiden

FFmpeg verfügt über eine Funktion, mit der Sie Videos in kurze Stücke schneiden können.

Wir werden die folgenden Argumente verwenden:

  • -ss Parameter gibt das s an Startzeit s Stempel in HH:MM:SS.ms formatieren
  • -t Das Argument gibt die Dauer des letzten Clips an (t ime) in Sekunden
  • -codec copy – Parameter würde alle Streams ohne Neukodierung kopieren
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -ss 00:01:00.0 \
    -codec copy \
    -t 20 \
    OutputVideo.mp4

Videodatei in mehrere Teile aufteilen

Verwenden Sie den unten gezeigten Befehl, um ein Video in zwei oder mehr Teile zu teilen.

In unserem Beispiel teilen wir die Datei in zwei Teile:

  • Der erste Teil ist 30 Sekunden lang ab dem Anfang der Datei (-t Argument)
  • Der zweite Teil enthält die Videodaten von der 50. Sekunde bis zum Ende der Datei (-ss Argument)
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -t 00:00:30 \
    -c copy OutputVideo-1.mp4 \
    -ss 00:00:50 \
    -codec copy \
    OutputVideo-2.mp4

Audio stumm schalten

Verwenden Sie den folgenden Befehl, um den Ton der Ausgabevideodatei zu deaktivieren:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -an OutputVideo.mp4

Audio aus Video extrahieren

Sie können den Ton aus dem Video extrahieren, indem Sie den folgenden Befehl ausführen:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -vn \
    -ac 2 \
    -ab 187 \
    -f mp3 \
    Audio.mp3

Hier verwenden wir die folgenden Optionen:

  • -vn deaktiviert die Videoaufnahme in die Ausgabedatei
  • -ac legt die Anzahl von a fest audio c Kanäle
  • -ab setzt a Audio b itrate auf 187 kb/s
  • -f legt ein Ausgabeformat auf mp3 fest

Audio und Video zusammenführen

Verwenden Sie den folgenden Befehl, um der Videodatei eine Audiospur hinzuzufügen:

ffmpeg -i Audio.mp3 -i sample-mp4-file.mp4 \
    -hide_banner \
    OutputVideo.mp4

Video in Bilder umwandeln

Verwenden Sie den unten angegebenen Befehl, um Videos in Bilder umzuwandeln:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    image%d.jpg

Bilder in Video umwandeln

Alle Bilder können in das Video umgewandelt werden:

ffmpeg -f image2 -i image%d.jpg \
    -hide_banner \
    OutputVideo.mp4

Versuchen Sie, dem endgültigen Clip selbst Audio hinzuzufügen.

Konvertieren von MP4 in FLV

Führen Sie den unten gezeigten Befehl aus, um eine Videodatei im MP4-Format in das FLV-Format zu konvertieren:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -vn \
    -ac 2 \
    -ab 187 \
    -f flv \
    OutputVideo.flv

FLV in MPG umwandeln

Führen Sie den unten gezeigten Befehl aus, um eine Videodatei im FLV-Format in das MPG-Format zu konvertieren:

ffmpeg -i OutputVideo.flv -hide_banner \
    OutputVideo.mpg

MPG in FLV umwandeln

Kopieren Sie den unten gezeigten Befehl, um eine Videodatei im MPG-Format in FLV zu konvertieren:

ffmpeg -i OutputVideo.mpg -hide_banner \
    -ab 26k \
    -f flv \
    OutputVideo.flv

Video in ein animiertes GIF umwandeln

Um eine Videodatei in eine animierte GIF-Datei umzuwandeln, verwenden Sie den Befehl:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    Output.gif

In CD/DVD-Format konvertieren

Verwenden Sie -target geben Sie ein, um eine Video-CD- oder DVD-formatierte Ausgabedatei zu erstellen.

Der Zieltyp unterstützt vcd , svcd , dvd , dv und dv50 Formate, denen pal- vorangestellt werden kann , ntsc- oder film- um den entsprechenden Standard zu verwenden:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -target film-vcd \
    vcd_video.mpg

Untertitel einfügen

Lassen Sie uns eine Demo-Untertiteldatei erstellen (weitere Informationen zu Untertiteln):

cat << EOF > subtitles.srt
1
00:00:00,000 --> 00:00:20,000
This is demo subtitle 1

2
00:00:20,000 --> 00:00:40,000
This is demo subtitle 2
EOF

Sie können einer Videodatei eine Untertiteldatei hinzufügen, indem Sie dem Befehl eine separate Untertiteldatei hinzufügen:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -i subtitles.srt \
    -c copy \
    -c:s mov_text \
    OutputVideo.mp4

Wenn Sie Untertitel im Video anzeigen möchten:

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -vf subtitles=subtitles.srt \
    OutputVideo.mp4

Untertitel extrahieren

Um Untertitel aus der Videodatei zu extrahieren, überprüfen Sie, welchen Stream Sie zuerst verwenden sollten:

ffmpeg -i OutputVideo.mp4

Die Ausgabe zeigt an, dass Untertitel in der Datei im Stream #0:2 verfügbar sind .

Jetzt können wir sie mit dem folgenden Befehl extrahieren:

ffmpeg -i OutputVideo.mp4 -hide_banner \
    -map 0:2 subtitles.srt

Wobei -map 0:2 gibt den erforderlichen Stream an.

Video drehen

Und schließlich ist hier ein Befehl, um den Videoclip um 90 Grad im Uhrzeigersinn zu drehen (verwenden Sie transpose=2 gegen den Uhrzeigersinn drehen):

ffmpeg -i sample-mp4-file.mp4 -hide_banner \
    -filter:v 'transpose=1' \
    OutputVideo.mp4

Zusammenfassung

FFmpeg ist ein vielseitiges Multimedia-Framework, das es uns ermöglicht, verschiedene Operationen mit Videodateien durchzuführen.

Sie können FFmpeg verwenden, um Video- und Audiodateien in andere Formate zu konvertieren, Bild- und Audioextraktion durchzuführen, Videos zu drehen, Untertitel hinzuzufügen, Videoclips in mehrere Teile aufzuteilen und vieles mehr. In diesem Leitfaden haben wir gezeigt, wie Sie die am häufigsten verwendeten Befehle anwenden, um die gewünschten Ergebnisse zu erzielen.


Linux
  1. Überwachen Sie Befehle und Aufgaben mit dem Linux-Überwachungsbefehl

  2. 4 Videositzungen für den Linux-Systemadministrator

  3. Nützlichste Nginx-Befehle im Linux-System

  4. LosslessCut – Ein einfacher plattformübergreifender Video- und Audio-Cutter

  5. Was ist der Grund für die Koexistenz von rmdir(1) und rm(1)?

40 nützliche Linux-Netzwerkbefehle für moderne SysAdmins

50 einfache und nützliche dmidecode-Befehle für Linux

Die 40 nützlichen Linux-Server-Befehle für Anfänger und Profis

40 nützliche Git-Befehle für Linux-Administratoren und -Entwickler

Die 50 nützlichsten Zypper-Befehle für SUSE Linux-Benutzer

Die 50 nützlichen Linux-IP-Befehle für Netzwerkadministratoren