Diese Anleitung zeigt Ihnen, wie Sie FFmpeg in Ubuntu 20 installieren und verwenden.04.
Installation von FFmpeg unter Ubuntu
Es gibt zwei offizielle Möglichkeiten, FFmpeg unter Ubuntu zu installieren: aus dem Ubuntu-Repository (v7.x) und vom Snap (v4.x). Abhängig von Ihren Bedürfnissen sollten Sie die für Sie am besten geeignete Methode auswählen.
Es ist auch möglich, FFmpeg aus dem Quellcode zu kompilieren und zu installieren. Diese Methode ist jedoch etwas komplex und es wird empfohlen, diese Methode nicht zu befolgen, es sei denn, Sie haben einen bestimmten Grund dafür.
Installieren von FFmpeg von Ubuntu Repo
Dies ist die Standardmethode für die Installation von FFmpeg. Alles, was Sie tun müssen, ist, APT mitzuteilen, dass es das Programm aus dem Standard-Ubuntu-Software-Repository herunterladen und installieren soll.
Starten Sie ein Terminal, aktualisieren Sie den APT-Cache und installieren Sie FFmpeg.
$ sudo apt-Update$ sudo apt install ffmpeg
Lassen Sie uns überprüfen, ob die Installation erfolgreich war. Testen Sie zunächst die FFmpeg-Version über den folgenden Befehl:
$ ffmpeg -v
Vergessen Sie nicht, die verfügbaren Encoder und Decoder zu überprüfen. Geben Sie dazu den folgenden Befehl ein:
$ ffmpeg -Encoder
$ ffmpeg -Decoder
Installieren von FFmpeg von snap
FFmpeg ist auch als Snap-Paket erhältlich. Wenn Sie Snap nicht konfiguriert haben, können Sie es sofort installieren, indem Sie den folgenden Befehl ausführen:
$ sudo apt update && sudo apt install snapd -y$ sudo snap install core core20 && sudo systemctl restart snapd
Jetzt sollte Ihr System bereit sein, Snap-Pakete aus dem Snapcraft-Store zu holen und zu installieren. Schau dir FFmpeg auf Snapcraft an.
$ sudo snap install ffmpeg
Testen Sie die Installation von FFmpeg, indem Sie den folgenden Befehl eingeben:
$ ffmpeg -Version$ ffmpeg -Encoder
$ ffmpeg -Decoder
Installieren von FFmpeg aus dem Quellcode
FFmpeg ist ein Open-Source-Tool. Es ist daher möglich, dieses Programm manuell aus dem Quellcode zu erstellen. Diese Methode wird nur empfohlen, wenn Sie bereit sind, einen benutzerdefinierten Build zu erstellen, die neueste Version ausprobieren oder einen Fehler testen möchten. Befolgen Sie für die allgemeine Verwendung stattdessen die anderen Methoden, um dieses Programm zu installieren. Sehen Sie sich den offiziellen FFmpeg-Kompilierungsleitfaden für Ubuntu an.
Das Erstellen von FFmpeg aus der Quelle erfordert mehrere Abhängigkeiten. Geben Sie die folgenden Befehle ein, um die Abhängigkeiten herunterzuladen:
$ sudo apt-Update$ sudo apt installieren \
$ autoconf \
$ automatisch erstellen \
$ bauen-wesentlich \
$ cmake \
$ git-core \
$ libass-dev \
$libfreetype6-dev\
$libgnutls28-dev\
$libsdl2-dev\
$libtool\
$libva-dev\
$libvdpau-dev\
$libvorbis-dev\
$libxcb1-dev\
$libxcb-shm0-dev\
$libxcb-xfixes0-dev\
$ pkg-config \
$texinfo\
$ wget \
$ jasm \
$ zlib1g-dev
Bereiten Sie nun ein spezielles Verzeichnis zum Speichern des Quellcodes und der kompilierten Binärdateien vor.
$ mkdir -pv ~/ffmpeg_source ~/bin
Es ist jetzt an der Zeit, einige Bibliotheken von Drittanbietern vorzubereiten. Dies sind die am häufigsten verwendeten mit FFmpeg. Wenn Sie eine oder mehrere dieser Bibliotheken nicht benötigen, überspringen Sie den entsprechenden Teil und ignorieren Sie den zugehörigen ./konfigurieren Möglichkeit.
- NASM: Ein Assembler, auf den einige Bibliotheken angewiesen sind.
- libx264: Das H.264-Video-Encoder.
- libx265: Das H.265-Video-Encoder (auch bekannt als HEVC).
- libvpx: Der VP8/VP9-Video-Encoder/-Decoder.
- libfdk-aac: Der AAC-Audio-Encoder.
- libmp3lame: Der MP3-Audio-Encoder.
- libopus: Der Opus Audio-Encoder/-Decoder.
- libaom: Der AV1-Video-Encoder/-Decoder. Beachten Sie, dass die Kompilierung möglicherweise fehlschlägt, wenn Sie diese verwenden. Laut dem offiziellen FFmpeg-Wiki scheint dieses Paket noch keine stabile API zu haben. Es wird empfohlen, diese zu vermeiden.
Sie sind jetzt bereit, FFmpeg aus der Quelle zu erstellen. Holen Sie sich den Quellcode, indem Sie Folgendes ausgeben:
$ cd ~/ffmpeg_source$ wget -O ffmpeg-snapshot.Teer.bz2 https://ffmpeg.org/releases/ffmpeg-snapshot.Teer.bz2
$ tar -xvf ffmpeg-snapshot.Teer.bz2
$ cd ffmpeg
Aktualisieren Sie die Umgebungsvariable PATH und führen Sie das Konfigurationsskript aus.
$ PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./konfigurieren \$ --prefix="$HOME/ffmpeg_build" \
$ --pkg-config-flags="--static" \
$ --extra-cflags="-I$HOME/ffmpeg_build/include" \
$ --extra-ldflags="-L$HOME/ffmpeg_build/lib" \
$ --extra-libs="-lpthread -lm" \
$ --bindir="$HOME/bin" \
$ --enable-gpl \
$ --enable-gnutls \
$ --enable-libaom \
$ --enable-libass \
$ --enable-libfdk-aac \
$ --enable-libfreetype \
$ --enable-libmp3lame \
$ --enable-libopus \
$ --enable-libvorbis \
$ --enable-libvpx \
$ --enable-libx264 \
$ --enable-libx265 \
$ --enable-nonfree
Während dieses Vorgangs kann der Fehler „gnutls not found using pkg-config“ auftreten.” Um dieses Problem zu lösen, muss ein bestimmtes Paket im System vorhanden sein. Sie können das entsprechende Paket installieren und diesen Fehler beheben, indem Sie den folgenden Befehl ausführen:
$ sudo apt install -y libunistring-dev
Führen Sie nun das Konfigurationsskript erneut aus.
Führen Sie die machen Befehl zum Starten der Kompilierung von FFmpeg. Verwenden Sie das Flag „-j“, um die parallele Kompilierung auszuführen, um den Prozess zu beschleunigen.
$ PATH="$HOME/bin:$PATH" make -j4
Sie können nun die FFmpeg-Version, die Sie gerade aus der Quelle erstellt haben, über den folgenden Befehl installieren:
$ sudo make install$ hash -r
Laden Sie die Bash-Shell neu, um den neuen FFmpeg-Binärspeicherort zu erkennen.
$ Quelle ~/.Profil
Testen Sie die FFmpeg-Installation über die folgenden Befehle:
$ ffmpeg -Version$ ffmpeg -Encoder
$ ffmpeg -Decoder
Verwenden von FFmpeg
Nachdem Sie die obigen Schritte ausgeführt haben, haben Sie FFmpeg nun erfolgreich installiert. Es ist Zeit zu lernen, wie man es benutzt. Dieser Abschnitt zeigt Ihnen einige der häufigsten Anwendungen dieses Tools.
Konvertieren Sie zunächst eine Videodatei vom MP4- in das WebM-Format. Das Schöne an FFmpeg ist, dass Sie die Eingabe- und Ausgabeformate nicht angeben müssen. FFmpeg erkennt automatisch das Quell- und Zielformat und reagiert entsprechend. Hier wird das Flag „-hide_banner“ verwendet, um die Konfigurationsinformationen zu deaktivieren, die FFmpeg bei jedem Lauf meldet reports.
$ffmpeg -hide_banner -i