本文记录在 Windows 10/11 64位系统下,使用 MSYS2 环境配合 MinGW64 工具链,编译 x264、x265 以及 FFmpeg 的完整流程,方便在 Windows 平台下生成支持 H.264/H.265 编码的 FFmpeg 动态库。
一、环境准备
1. 安装 MSYS2
从 MSYS2 官网 下载安装包,按提示安装即可。
2. 配置镜像源(加速下载)
打开 MSYS2 MinGW 64-bit,执行以下命令替换为中科大镜像源:
sed -i "s#mirror.msys2.org/#mirrors.ustc.edu.cn/msys2/#g" /etc/pacman.d/mirrorlist*
pacman -Sy
3. 安装编译工具链与依赖
pacman -S mingw-w64-x86_64-toolchain # MinGW64 编译工具链(gcc, make等)
pacman -S base-devel # 基础开发工具
pacman -S yasm nasm # 汇编器
pacman -S git # 可选,用于拉取源码
pacman -S mingw-w64-x86_64-cmake # CMake(用于 x265 编译)
4. 验证安装
输入以下命令查看 gcc 版本:
gcc -v

5. 添加环境变量(可选)
如果希望在任何终端中使用 MinGW 工具,可将以下路径添加到系统 PATH 中(根据实际安装路径调整):
C:\\msys64\\mingw64\\bin

二、编译 x264
1. 下载源码
git clone https://code.videolan.org/videolan/x264.git
cd x264
2. 编译脚本(build-x264.sh)
创建 build-x264.sh,内容如下:
#!/bin/sh
basepath=$(cd `dirname $0`;pwd)
echo ${basepath}
cd ${basepath}/x264-src # 根据路径名称自行修改
pwd
./configure –prefix=${basepath}/x264_MinGW –enable-shared
make -j8
make install
make clean
3. 执行编译
chmod +x build-x264.sh
./build-x264.sh

三、编译 x265
1. 下载源码
git clone https://bitbucket.org/multicoreware/x265_git.git
cd x265_git
2. 使用 CMake 生成 Makefile

3. 编译与安装
# 进入相对应目录
cd D:/FFmpeg/x265_MinGW
# 编译
mingw32-make -j$(nproc)
mingw32-make install
四、编译 FFmpeg(集成 x264 与 x265)
1. 下载 FFmpeg 源码
从 FFmpeg 官网 下载稳定版源码(如 ffmpeg-5.1.4.tar.xz),解压后进入目录。
2. 编译脚本(build-ffmpeg.sh)
创建 build-ffmpeg_MinGW.sh,内容如下:
#!/bin/sh
basepath=$(cd `dirname $0`;pwd)
echo ${basepath}
cd ${basepath}/ffmpeg-5.1.4-src
pwd
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/d/FFmpeg/x264_MinGW/lib/pkgconfig
export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/d/FFmpeg/x265_MinGW/lib/pkgconfig
echo ${PKG_CONFIG_PATH}
./configure –prefix=${basepath}/ffmpeg514_MinGW \\
–enable-gpl –enable-libx264 –enable-libx265 –disable-static –enable-shared \\
–extra-cflags=-l${basepath}/x264_MinGW/include –extra-ldflags=-L${basepath}/x264_MinGW/lib
–extra-cflags=-l${basepath}/x265_MinGW/include –extra-ldflags=-L${basepath}/x265_MinGW/lib
make -j8
make install
3. 执行编译
chmod +x build-ffmpeg.sh
./build-ffmpeg.sh

五、验证编译结果
进入安装目录(如 ffmpeg_mingw/bin),运行:
ffmpeg –version
若输出中包含 –enable-libx264 –enable-libx265,则说明编译成功。

六、常见问题
-
找不到 pkg-config 包 确保 PKG_CONFIG_PATH 环境变量指向正确的 .pc 文件路径。
-
CMake 无法找到编译器 请确认使用的是 MSYS2 MinGW 64-bit 终端,而非 MSYS2 其它终端。
-
编译过程中缺少依赖 可通过 pacman -S mingw-w64-x86_64-<包名> 安装对应依赖。
网硕互联帮助中心





评论前必须登录!
注册