msys2使用MinGW64编译ffmpeg 64bit库

搭建编译环境

下载安装msys2,参考文章《QT Mingw编译ffmpeg源码以及测试》。

安装必要的库文件

双击msys2安装目录下的msys2.exe,在cmd窗口中执行以下命令:

复制代码
 //升级所有库
pacman -Syu
//使用下列命令安装ffmpeg编译的依赖和工具
pacman -S mingw-w64-x86_64-toolchain 
pacman -S mingw-w64-x86_64-yasm 
pacman -S mingw-w64-x86_64-SDL2 
pacman -S mingw-w64-x86_64-fdk-aac 
pacman -S mingw-w64-x86_64-x264 
pacman -S mingw-w64-x86_64-x265
pacman -S mingw-w64-x86_64-gcc
pacman -S make diffutils pkg-config git nasm

将ffmpeg拷贝到msys安装路径下的/home/计算机名xxx/下;并在ffmpeg下新建build目录,用于编译;

编译

运行MSYS2 MINGW64:
使用cd命令切换到刚才新建的build目录下,执行configure,生成Makefile:

c 复制代码
./configure \
    --prefix="/usr/local/ffmpeg" \
    --enable-shared --disable-static \
    --enable-w32threads --disable-debug --disable-everything \
    --enable-gpl --disable-network \
    --enable-encoder=bmp,mjpeg,jpeg2000,mpeg4 \
    --enable-decoder=h264,hevc,mpeg4,mjpeg,bmp  \
    --enable-demuxer=h264,hevc,avi,matroska,image2,image_bmp_pipe \
    --enable-muxer=h264,hevc,avi,matroska,mp4,mjpeg,image2 \
    --enable-parser=h264,hevc,mjpeg,bmp \
    --enable-protocol=file \
    --enable-filter=scale \
    --disable-indevs \
    --disable-hwaccels \
    --extra-libs=-lmsvcrt

以上设置一些编译ffmpeg的选项,相关解释如下,后续继续补充:

复制代码
--prefix 安装程序到指定的目录,即最终编译后生成的文件的存放目录;
--enable-sdl2引入SDL2库,ffplay编译必须;
--enable-x264 启用H.264编码(默认关闭);
--enable-faac启用faac支持libfaac(默认关闭);
--enable-static构建静态库(默认启用);
--disable-static禁止构建静态库(默认关闭);
--enable-shared构建共享库(默认关闭);
--disable-shared 禁止构建共享库(默认启用);
--enable-gpl允许使用GPL(默认关闭);

成功后执行make,make install,编译好的库文件会放置到msys64/usr/local/ffmpeg下,拷贝即可。

相关推荐
阿里巴啦5 小时前
python+yt-dlp开源项目,支持 YouTube, Bilibili, TikTok/抖音,快手 等多个平台的视频/音频/字幕下载/ai摘要等功能
python·ffmpeg·whisper·音视频·视频处理·ai摘要·音视频转录
来鸟 鸣间1 天前
linux下ffmpeg源码编译
linux·运维·ffmpeg
Echo_NGC22371 天前
【FFmpeg使用指南】Part 2:滤镜图架构与信号处理
架构·ffmpeg·音视频·信号处理
Echo_NGC22371 天前
【FFmpeg使用指南】Part 1:核心架构与媒体流处理
ffmpeg·音视频·媒体·视频
ssxueyi1 天前
用 Claude Code 从零开发自己的Direct3D 硬件加速播放器
ffmpeg·ai编程·directx·视频播放器·从零开始·claude code·csdn征文活动
Yan_uuu1 天前
ubuntu18.04 安装 x264、ffmpeg、nv-codec-hearers 支持GPU硬件加速
c++·图像处理·ubuntu·ffmpeg
runner365.git2 天前
做一个基于ffmpeg的AI Agent智能体
人工智能·ffmpeg·大模型
彷徨而立2 天前
【FFmpeg】理解 av_packet_from_data 和 av_packet_unref 接口
ffmpeg
runner365.git2 天前
ffmpeg8.0合入whisper,语音识别模型终于进入ffmpeg
ffmpeg·whisper·语音识别
小徐敲java3 天前
视频推流服务器与FFmpeg 安装配置
服务器·ffmpeg·音视频