本页内容

在 Windows 上从源代码构建 FFmpeg

本页面介绍了如何在 Windows 上配置和编译FFmpeg。所需步骤如下:

  • 获取 FFmpeg 源代码。
  • 安装所需的依赖项。
  • 通过命令行配置 FFmpeg。
  • 构建开发库。

获取 FFmpeg 源代码

您可以通过以下方式获取 FFmpeg 源代码:

  • 从FFmpeg 下载页面下载。
  • 从 Git 克隆。例如,以下命令将 FFmpeg 9.0.1 版本的源代码克隆到C:\FFmpeg\ffmpeg 。
    git clone --branch n9.0.1 https://git.ffmpeg.org/ffmpeg.git ffmpeg

建议使用与Qt Multimedia 主页中所述相同的 FFmpeg 版本。

下文假设您将 FFmpeg 源代码存储在C:\FFmpeg\ffmpeg 目录下。

先决条件

要构建 FFmpeg,需要以下工具和软件包:

  • Microsoft Visual Studio 编译器 (MSVC) 或 MinGW-w64。
  • MSYS2。
  • MSYS 软件包(make、yasm)。

有关 Qt 也支持的推荐编译器,请参阅《Qt for Windows - 从源代码构建》。您可以使用Qt Online Installer 安装受支持的 MinGW-w64 编译器。

安装 MSYS2

要安装 MSYS2,您可以:

本文中的说明基于将 MSYS2 安装至C:\msys64\ ,这是使用winget 时的默认路径。

安装完成后,从 Windows 开始菜单启动MSYS2 MINGW64 命令行窗口,并使用它来安装必要的库。

pacman -S --noconfirm make yasm diffutils

在构建 FFmpeg 之前,MSYS2 的PATH 目录中必须安装有编译器。MSVC 和 MinGW-w64 的操作方式不同。请根据您使用的编译器准备 MSYS2 环境。

为使用 MinGW-w64 进行构建准备 MSYS 环境

对于安装在C:\Qt\Tools\mingw1310_64\bin 下的MinGW-w64,您可以通过导出PATH环境变量将其添加到PATH 中。

export PATH=/c/Qt/Tools/mingw1310_64/bin:$PATH

请注意,也可以使用 pacman 安装 MinGW-w64。

pacman -S mingw-w64-x86_64-toolchain

为 MSVC 准备 MSYS2 环境

要在 MSYS2 下使用 MSVC 编译器构建 FFmpeg,需要确保启动 MSYS2 时路径中包含相应的 C 和 C++ 编译器。对于 64 位构建,您可以:

  • 从 Windows 开始菜单启动“Visual Studio x64 Native Tools 命令提示符”。
  • 在现有命令提示符中运行以下命令以启用 MSVC 编译器:
    "C:\Program Files\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" amd64

在此命令提示符下,使用选项启动 MSYS2 shell,以选择 MINGW64 环境并启用路径继承。

C:\msys64\msys2_shell.cmd -mingw64 -full-path

这将启动一个新的 shell 窗口,您可以在其中验证 MSVC 编译器是否可用。

which cl.exe

配置和构建 FFmpeg

在已准备好的 MSYS2 命令行界面中,导航至/c/FFmpeg 目录。在此目录下,创建一个名为build 的目录(该目录将存放 FFmpeg 的构建产物),并进入该目录。

cd /c/FFmpeg/build

要配置 FFmpeg,请运行:

../configure --prefix=../install --disable-doc --enable-network --enable-shared

--prefix 参数指定了构建完成后FFmpeg开发库的安装路径。文档选项并非必需,但应启用网络功能。若要将FFmpeg构建为静态库,请省略--enable-shared 选项。

若要配置 FFmpeg 以使用 MSVC 进行构建,请在其他命令行选项之外额外指定工具链:

../configure --prefix=../install --disable-doc --enable-network --enable-shared --toolchain=msvc

configure 命令执行完毕后,请使用make 命令构建并安装 FFmpeg。

make -j install

如果构建过程没有出现错误,FFmpeg 开发库将安装在C:\FFmpeg\install 目录中。如果您构建了Qt Multimedia ,该路径将存储在FFMPEG_DIR 变量中,该变量在配置Qt Multimedia 时会被使用。

© 2026 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.