Erstellen von FFmpeg aus dem Quellcode unter Windows
Diese Seite erklärt, wie man FFmpeg unter Windows konfiguriert und baut. Dies beinhaltet:
- Holen Sie sich den FFmpeg-Quellcode.
- Installieren Sie die erforderlichen Abhängigkeiten.
- Konfigurieren Sie FFmpeg von der Kommandozeile für MSVC oder für MinGW-w64.
- Erstellen Sie die Entwicklungsbibliotheken.
Beschaffung des FFmpeg-Quellcodes
Sie können den FFmpeg-Quellcode auf folgende Weise erhalten:
- Herunterladen von der FFmpeg-Download-Seite.
- Klonen von git. Zum Beispiel klont dieser Befehl die Version 7.1 der FFmpeg-Quellen nach
C:\FFmpeg\ffmpeg
.C:\FFmpeg> git clone --branch n7.1 https://git.ffmpeg.org/ffmpeg.git ffmpeg
Es wird empfohlen, die gleiche FFmpeg-Version zu verwenden, wie sie auf der HauptseiteQt Multimedia dokumentiert ist.
In den folgenden Abschnitten wird davon ausgegangen, dass Sie den FFmpeg-Quellcode unter C:\FFmpeg\ffmpeg
speichern.
Voraussetzungen
Um FFmpeg zu erstellen, werden diese Werkzeuge und Pakete benötigt:
- Microsoft Visual Studio Compiler (MSVC) oder MinGW-w64.
- MSYS2.
- MSYS-Pakete (perl, make, yasm, und diffutils).
Siehe Qt für Windows - Erstellen vom Quellcode für empfohlene Compiler, die auch von Qt unterstützt werden. Sie können einen unterstützten MinGW-w64-Compiler mit dem Qt Online Installer installieren.
Installation von MSYS2
Um MSYS2 zu installieren, können Sie:
- Verwenden Sie das MSYS2-Installationsprogramm.
- Verwenden Sie den winget Paketmanager.
winget install msys2.msys2
Die Anweisungen in diesem Dokument gehen davon aus, dass MSYS2 unter C:\msys64\
installiert ist, was der Standardpfad bei Verwendung von winget
ist.
Starten Sie nach der Installation die Shell MSYS2 MINGW64
aus dem Windows-Startmenü, und installieren Sie damit die erforderlichen Bibliotheken.
pacman -S --noconfirm perl make yasm diffutils
Bevor Sie FFmpeg erstellen können, muss MSYS2 einen Compiler in seinem PATH
haben. Dies ist für MSVC und MinGW-w64 unterschiedlich. Bereiten Sie die MSYS2-Umgebung für den von Ihnen verwendeten Compiler vor.
Vorbereiten der MSYS-Umgebung für das Bauen mit Mingw-w64
Für MinGW-w64, das unter C:\Qt\Tools\mingw1310_64\bin
installiert ist, können Sie es zu PATH
hinzufügen, indem Sie die Umgebungsvariable PATH exportieren.
$ export PATH=/c/Qt/Tools/mingw1310_64/bin:$PATH
Beachten Sie, dass es auch möglich ist, MinGW-w64 mit pacman zu installieren.
$ pacman -S mingw-w64-x86_64-toolchain
Vorbereiten der MSYS2-Umgebung für die MSVC
Die Erstellung von FFmpeg mit dem MSVC-Compiler unter MSYS2 erfordert, dass MSYS2 mit dem entsprechenden C- und C++-Compiler im Pfad gestartet wird. Für einen 64-Bit-Build, können Sie:
- Starten Sie Visual Studio x64 Native Tools Command Prompt aus dem Windows-Startmenü.
- Aktivieren Sie den MSVC-Compiler von einer bestehenden Eingabeaufforderung aus, indem Sie ihn ausführen:
"C:\Program Files\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat" amd64
Starten Sie von dieser Eingabeaufforderung aus die MSYS2-Shell mit den Optionen zur Auswahl der MINGW64-Umgebung und zur Aktivierung der Pfadvererbung.
C:\msys64\msys2_shell.cmd -mingw64 -full-path
Dadurch wird ein neues Shell-Fenster geöffnet, in dem Sie überprüfen können, ob der MSVC-Compiler verfügbar ist.
$ which cl.exe
Konfigurieren und Erstellen von FFmpeg
Wechseln Sie in der vorbereiteten MSYS2-Shell in das Verzeichnis /c/FFmpeg
. Erstellen Sie in diesem Verzeichnis ein Verzeichnis build
, das die FFmpeg-Build-Artefakte enthalten wird, und navigieren Sie dorthin.
$ cd /c/FFmpeg/build
Um FFmpeg für die Erstellung mit MinGW-w64 zu konfigurieren, führen Sie aus:
$ ../ffmpeg/configure --prefix=../install --disable-doc --enable-network --enable-shared
Um FFmpeg für die Erstellung mit MSVC zu konfigurieren, geben Sie zusätzlich zu den anderen Befehlszeilenoptionen die Toolchain an:
$ ../ffmpeg/configure --prefix=../install --disable-doc --enable-network --enable-shared --toolchain=msvc
Das Argument --prefix
gibt einen Pfad an, in dem die FFmpeg-Entwicklungsbibliotheken nach der Erstellung installiert werden. Die Dokumentation wird nicht benötigt, aber die Netzwerkfunktionen sollten aktiviert werden. Um FFmpeg als statische Bibliotheken zu bauen, lassen Sie die Option --enable-shared
weg.
Sobald der Befehl configure
beendet ist, erstellen und installieren Sie FFmpeg mit dem Befehl make
.
$ make -j install
Wenn der Build ohne Fehler abgeschlossen wird, werden die FFmpeg-Entwicklungsbibliotheken im Verzeichnis C:\FFmpeg\install
installiert. Wenn Sie Qt Multimedia erstellen, wird dieser Pfad in der Variable FFMPEG_DIR
gespeichert, die bei der Konfiguration von Qt Multimedia verwendet wird.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.