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下,拷贝即可。

相关推荐
筏.k1 天前
WebRTC 项目中捕获 FFmpeg 底层源码日志(av_log)的完整方案
ffmpeg·webrtc
学习_学习_再学习1 天前
ffmpeg学习记录
学习·ffmpeg
我科绝伦(Huanhuan Zhou)2 天前
Oracle AWR管理与快照操作完整指南
数据库·oracle·ffmpeg
梵尔纳多2 天前
ffmpeg 使用滤镜实现播放倍速
c++·qt·ffmpeg
无敌最俊朗@4 天前
音视频播放的核心处理流程
ffmpeg
mortimer5 天前
搞懂FFmpeg中2个桀骜不驯的参数:CRF 与 Preset
ffmpeg·音视频开发·视频编码
2401_841495645 天前
Windows 系统中ffmpeg安装问题的彻底解决
windows·python·ffmpeg·bug·语音识别·下载·安装步骤
八月的雨季 最後的冰吻5 天前
FFmpeg --15-视频解码: AVIO内存输入模式分析
ffmpeg·音视频
aqi006 天前
FFmpeg开发笔记(八十八)基于Compose的国产电视直播开源框架MyTV
android·ffmpeg·音视频·直播·流媒体
present12276 天前
一段音频/视频分离成人声与伴奏,Windows + Anaconda 快速跑通 Spleeter(离线可用)
windows·职场和发展·ffmpeg·音视频·娱乐·媒体