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

相关推荐
进击ing小白38 分钟前
FFmpeg的基本概述(二)
ffmpeg
OperateCode3 天前
AutoVideoMerge:让二刷更沉浸的自动化视频处理脚本工具
python·opencv·ffmpeg
胡耀超4 天前
DataOceanAI Dolphin(ffmpeg音频转化教程) 多语言(中国方言)语音识别系统部署与应用指南
python·深度学习·ffmpeg·音视频·语音识别·多模态·asr
byxdaz4 天前
FFmpeg QoS 处理
ffmpeg
codelancera5 天前
ffmpeg-调整视频分辨率
ffmpeg·音视频
chenchao_shenzhen6 天前
RK3568嵌入式音视频硬件编解码4K 60帧 rkmpp FFmpeg7.1 音视频开发
ffmpeg·音视频·rk3588·音视频开发·嵌入式开发·瑞芯微rk3568·硬件编解码
_多拉不懂A梦6 天前
FFmepg源码系列-avformat_open_input()
c++·ffmpeg·音视频
阿飞__11 天前
C++使用FFmpeg进行视频推流
c++·ffmpeg·音视频
mortimer11 天前
pydub下音频处理:跨越wav格式的4GB限制这道坎
python·ffmpeg·numpy