Windows下编译FFmpeg(使用MinGW)
参考:https://www.cnblogs.com/harlanc/p/9569960.html
Win10 X64
FFmpeg版本:4.1.git
MinGW Get:0.6.2,32位
GCC:6.3.0
安装编译环境:
MinGW:https://sourceforge.net/projects/mingw/
打开minGW installation manager,选择以上包,点击Installation->Apply Changes 进行安装.
安装yasm:http://yasm.tortall.net/Download.html
我编译32位的,下载“Win32.exe”。下载完成后将yasm-1.3.0-win32.exe重命名为yasm.exe,放到MinGW\msys\1.0\bin下
安装nasm:https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/win32/
下载nasm-2.13.03-win32.zip,解压并将nasm.exe拷贝到MinGW\msys\1.0\bin下
安装pkg-config:http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/pkg-config_0.26-1_win32.zip
将bin下面的pkg-config.exe拷贝到MinGW\msys\1.0\bin下
安装SDL:https://www.libsdl.org/release/SDL2-devel-2.0.8-mingw.tar.gz
解压后将所有文件合并到MinGW\msys\1.0\
此时基本完成,但可能还会报缺少某些组件(DLL),直接百度下载放到MinGW\msys\1.0\bin目录下
编译FFmpeg:
启动cmd,打开MinGW\msys\1.0下的msys.bat,会在当前目录下生成Home目录,将源码解压到home目录,在源码目录下新建build目录并进入,配置项目:
Release:../configure --enable-static --enable-shared
--enable-gpl --enable-version3 --disable-debug --enable-sdl
Debug: ../configure --disable-static --enable-shared --enable-gpl --enable-version3 --enable-sdl --enable-debug=3 --disable-optimizations --disable-mmx --disable-s tripping
等待完成,执行make,经过漫长等待,完成。
如果报 ERROR_NOT_ENOUGH_MEMORY 未定义,则是MinGW中的 MinGW\include\winsock2.h 文件未引用
winerror.h 文件。增加引用即可。