Fast jeder, der sich mit Videos beschäftigt, hat vielleicht schon einmal von FFmpeg gehört. Für diejenigen, die nicht vertraut sind, FFmpeg ist ein kostenloses und Open-Source-Programm, das jedes Videoformat in ein anderes konvertieren und seine Codecs ändern kann.
FFmpeg unterstützt fast alle Audio-/Video-Codecs (H.264, H.265, VP8, VP9, AAC, OPUS und mehr), Datei Formate (MP4, FLV, MKV, TS, WEBM, MP3 usw.) und sogar Streaming-Protokolle (HTTP, RTMP, RTSP, HLS, etc.).
So können Sie FFmpeg installieren und verwenden, um Audio- und Videodateien unter Linux zu verarbeiten.
FFmpeg-Installation unter Linux
FFmpeg ist ein kostenloses Open-Source-Tool, das in den Standard-Repositories fast aller großen Linux-Distributionen verfügbar ist. Du kannst auch erhalten Sie seinen Quellcode kostenlos, wenn Sie es selbst kompilieren möchten.
# Debian
sudo apt Installieren ffmpeg# Fedora
sudo dnf Installieren https://download1.rpmfusion.org/free/fedora/rpmfusion-free-Veröffentlichung-$(rpm -E %fedora).noarch.rpm
sudo dnf -y Installieren ffmpeg# RHEL/CentOS
Lecker Installieren ffmpeg ffmpeg-devel
# Arch-Linux
pacman -S ffmpeg
Wenn während der Installation alles gut geht, sollten Sie die FFmpeg-Version sehen können, wenn Sie die verwenden -Ausführung Streit.
ffmpeg-Version
Abrufen von Videoinformationen mit FFmpeg
Es ist möglich, die Informationen eines Videos anzuzeigen, das Sie mit FFmpeg bearbeiten möchten, indem Sie die verwenden -ich Flagge:
ffmpeg-ichBeispiel-Video.mp4-Banner ausblenden
Hier die -Banner ausblenden Die Aufgabe des Parameters besteht darin, unnötige Informationen zu verbergen. Sie können diesen Parameter entfernen und den Unterschied in der Ausgabe sehen.
Wie Sie sehen können, ist es möglich, viele Informationen zu erhalten wie Video-Codec-Typ, Erstellungsdatum, Metadaten und Encoderstruktur des Beispielvideos.
Konvertieren von Video- oder Audiodateien in ein anderes Format
Eine der nützlichsten Funktionen von FFmpeg ist, dass es ein Video oder Audio in ein anderes Format konvertieren kann. Sie können dies mit einfachen Einzeilern tun.
MOV zu MP4 mit FFmpeg
Sie können Ihre Videodatei im MOV-Format mit FFmpeg mit dem folgenden Befehl in MP4 konvertieren:
ffmpeg-ichinput-mov-video.movAusgangsvideo.mp4
Verwenden Sie zunächst die -ich Parameter, der für Eingangsvideo steht. Geben Sie dann die Datei ein, die Sie konvertieren möchten. Geben Sie abschließend das Format ein, in das Sie es konvertieren möchten. Sie können Ihrer Ausgabe einen beliebigen Namen geben.
Während FFmpeg ausgeführt wird, zeigt es Ihnen die Änderungen, die es auf dem Befehlsbildschirm vorgenommen hat. Ihre Ausgabedatei wird in Ihrem aktuellen Arbeitsverzeichnis gespeichert.
WAV zu MP3 mit FFmpeg
Ähnlich wie bei Videos können Sie die gleichen Konvertierungen für Audiodateien durchführen. Sie können beispielsweise eine WAV-Audiodatei wie folgt in MP3 konvertieren:
ffmpeg-ichBeispiel-wav.wav-vn-ar 48000 -ac 2 -b:a 256 Ausgang.mp3
Dieser Befehl hat mehr Parameter als die Videokonvertierungsmethode, aber sie sind nicht schwer zu verstehen. Um diese zu erklären:
- -vn: Manchmal enthalten die Audiodateien, die Sie anhören, Bilder. Diese Bilder stammen in der Regel aus Videos. Wenn Sie solche Bilder nicht in der Ausgabe haben möchten, können Sie diesen Parameter verwenden.
- -ar: Mit diesem Parameter können Sie die Audiofrequenz der Audiodatei einstellen, die Sie konvertieren möchten. Sie können die Tonqualität und -frequenz mit Werten wie 8 kHz, 44,1 kHz oder 48 kHz anpassen.
- -ac: Sie haben vielleicht schon einmal die Begriffe Mono und Stereo gehört. Dieser Parameter kann Ihnen dabei helfen, die Anzahl der Audiokanäle einzustellen.
- -b: a: Mit diesem Parameter können Sie die Audio-Bitrate pro Sekunde einstellen. Je höher das Kilobit, desto höher die Klangqualität.
Audiooperationen mit FFmpeg
FFmpeg kann auch Audio von Videos trennen. Dazu genügt es, die zu verwenden -vn Parameter:
ffmpeg-ichBeispiel-Video.mp4-vnAusgang.mp3
Wenn es Ihnen gelungen ist, den Ton vom Video zu trennen, können Sie jetzt versuchen, den Ton aus den Videos zu entfernen. Der Unterschied liegt hier in der -ein Parameter. Diesen Parameter sollten Sie im Hinterkopf behalten, wenn Sie jeglichen Ton in einem Video deaktivieren möchten:
ffmpeg-ichBeispiel-Video.mp4-einAusgang stumm.mp4
Videogrößenverarbeitung mit FFmpeg
Videogrößen können manchmal ziemlich nervig sein, besonders wenn Sie sie irgendwo hochladen möchten. Sie müssen keine Programme mehr herunterladen, um sie zu trimmen, da FFmpeg dies für Sie tun kann. Es gibt jedoch einige Parameter, die Sie dafür kennen müssen:
- -ss: Verwenden Sie diesen Parameter, um die Startzeit des Clips einzustellen
- -zu: Ermöglicht es Ihnen, die Endzeit des Clips festzulegen
- -c: Stellen Sie mit diesem Parameter den Codec Ihres Clips ein
- -t: Verwenden Sie diesen Parameter, um die Dauer des Clips einzustellen
Mit diesen Parametern können Sie viele Beispiele ableiten. Wenn Sie beispielsweise ein Video zuschneiden möchten, können Sie Folgendes verwenden:
ffmpeg-ichBeispiel-Video.mp4-ss 00:02:25-zu 00:03:50-cKopierenAusgangstrimmung.mp4
Es ist auch möglich, nur das Bild innerhalb des Videos zuzuschneiden und nicht das gesamte Video. Dafür können Sie auf Folgendes zurückgreifen:
ffmpeg -i Beispielvideo.mp4 -Filter: v "Crop=b: h:x: y" Ausgabe-Ernte.mp4
Hier sind die Parameter, die im oben genannten Befehl verwendet werden:
- -Filter: v: Dieser Parameter gibt den Filterprozess an, den Sie auf das Video anwenden
- Ernte: Dieser Parameter dient zum Spezifizieren, dass ein Clipping-Vorgang durchgeführt wird
- b: h:x: y: Wie Sie vielleicht schon erraten haben, bezeichnen die Variablen w, h, x und y die Breite, Höhe bzw. Position des Zuschneidefelds
Videos unter Linux mit FFmpeg bearbeiten
Das Bearbeiten von Videos endet nicht mit dem Trimmen und Schneiden. Manchmal müssen Sie auch den Maßstab des Videos ändern. Der folgende Befehl ändert die Größe des Videos auf die gewünschte Größe:
ffmpeg -i Beispielvideo.mp4 -vf scale=1920:1080 Ausgabeskalierung.mp4
- -vf: Dieser Parameter funktioniert genauso wie der -Filter: v Argument oben gesehen
- Skala: Mit diesem Parameter können Sie die Skalierungsgrößen angeben, die Sie in Ihrer Ausgabe haben möchten
Mit FFmpeg können Sie auch mehrere Videos kombinieren. Stellen Sie sich vor, Sie haben mehrere Clips, die mit demselben Codec codiert sind. Geben Sie die Liste der Videos ein, die Sie zusammenführen möchten .txt Datei. Führen Sie dann den folgenden Befehl aus:
ffmpeg-fkonkat-ichmeine-video-liste.txt-cKopierenSummenausgabe.mp4
Das konkat Parameter hier kombiniert Ihre Dateien. Es ist auch möglich, Videos mit FFmpeg zu drehen:
ffmpeg -i Beispielvideo.mp4 -vf "transponieren=2" output-rotate.mp4
- transponieren = 0: Vertikal spiegeln (Standard)
- transponieren = 1: 90 Grad im Uhrzeigersinn drehen
- transponieren=2: 90 Grad gegen den Uhrzeigersinn drehen
- transponieren=3: Vertikal spiegeln
Um Videos um 180 Grad im Uhrzeigersinn zu drehen, müssen Sie den Transpose-Parameter zweimal angeben:
ffmpeg -i Beispielvideo.mp4 -vf "transponieren=2,transponieren=2" output-rotate.mp4
FPS- und GOP-Operationen
Wie Sie wissen, bedeutet FPS Bilder pro Sekunde. GOP (Group of Pictures) ist der Abstand zwischen zwei Keyframes. FFmpeg ist auch nützlich, um einige Parameter zu ändern, einschließlich FPS und GOP. Wenn Sie den folgenden Befehl verwenden, ändert FFmpeg die ursprüngliche FPS auf den von Ihnen festgelegten Wert:
ffmpeg -i Beispielvideo.mp4 -vf "fps = 60" Ausgabe-fps.mp4
Für GOP können Sie die verwenden -g Parameter und setzen Sie seinen Wert auf den gewünschten Wert. Beachten Sie, dass das Erzwingen zu vieler Keyframes für die Vorwärtsalgorithmen einiger Encoder schädlich sein kann.
ffmpeg-ichBeispiel-Video.mp4-g 200 Ausgabe-gop.mp4
Erstellen Sie animierte GIFs mit FFmpeg
FFmpeg ist auch ideal für Konvertieren eines Videos in animierte GIFs. Sie können dazu einen einfachen Konvertierungsbefehl verwenden:
ffmpeg-ichBeispiel-Video.mp4Ausgabe-gif.gif
Aber manchmal möchten Sie vielleicht das GIF anpassen. Sie können die verschiedenen oben beschriebenen Parameter verwenden, um dies zu erreichen:
ffmpeg -ss 00:01:15 -i example-video.mp4 -to 10 -r 10 -vf scale=250:-1 output-gif.gif
Das -r Parameter bedeutet hier die Bildrate. Wie Sie sehen können, sind viele verschiedene Anpassungen in einem einzigen Zeilenbefehl möglich.
Extrahieren von Frames aus einem Video mit FFmpeg
Neben der Konvertierung eines oder mehrerer Bilder in ein Video können Sie auch Frames aus einem Video extrahieren. Der folgende Befehl extrahiert jede Sekunde einen Frame aus Ihrem Eingabevideo. Außerdem haben diese extrahierten Bilder zweistellige Namen wie 01.jpeg, 02.jpeg, etc. Wenn Sie möchten, können Sie auch andere gelernte Parameter hinzufügen.
ffmpeg-ichBeispiel-Video.mp4-r 1 Bild-%02d.jpeg
Sie können auch andere Formate wie PNG und BMP für die extrahierten Bilder verwenden.
Warum sollten Sie FFmpeg unter Linux verwenden?
Wie Sie sehen können, ist FFmpeg in vielerlei Hinsicht sehr vorteilhaft. Dazu benötigen Sie keine technischen Kenntnisse oder professionelle Linux-Erfahrung. Mit nur wenigen Parametern können Sie verschiedene Medienbearbeitungsfunktionen ausführen. Wenn Sie nicht sehr lange Bearbeitungen vornehmen, benötigen Sie keine teuren Computerprogramme und Online-Premium-Mitgliedschaften. Darüber hinaus funktioniert FFmpeg auch auf Low-End-Geräten sehr gut.
Außerdem sind die Funktionen von FFmpeg nicht auf die oben genannten beschränkt. Wenn Sie die Dokumentation und das Benutzerhandbuch lesen, können Sie sehen, wie leistungsfähig die Software tatsächlich ist. Sogar mit der --Hilfe Parameter und die Mann Befehl erhalten Sie detailliertere Informationen zur Verwendung von FFmpeg. Es gibt auch andere großartige Konverter für Linux, die mit FFmpeg konkurrieren können.