MinGW下编译ffmpeg静态库给Visual C++使用
首先推荐 http://ffmpeg.zeranoe.com/builds/, 这里已经有编译好的动态连接库。可惜上面没静态链接库。我也试过 DLL2Lib, 但是无法连接LIBCMT库,只能使用MSVCRT
所以一定要静态库的话只能自己编译了。在Windows上用MinGW编译真是个痛苦的过程,没有yum install和apt-get,所有的依赖项要自己找全。
废话少说,下面是编译过程,记录于此。
编译依赖项(下面的版本号是我编译的时候的版本号,不一定必须是这个版本号)1. Zlib 1.2.7
下载源代码 http://zlib.net/ 解压后:
2. libgsm 1.0.13-3下载源代码, http://libgsm.sourcearchive.com/, 解压后:
#ifdef __cplusplusextern "C" {#endif#include <libavcodec/avcodec.h>#include <libavformat/avformat.h>#include <libavutil/avutil.h>#include <libswscale/swscale.h>#ifdef __cplusplus}#endif#pragma comment( lib, "libgcc.a")#pragma comment( lib, "libmingwex.a")#pragma comment( lib, "libcoldname.a")#pragma comment( lib, "libavcodec.a")#pragma comment( lib, "libavformat.a")#pragma comment( lib, "libavutil.a")#pragma comment( lib, "libswscale.a")#pragma comment( lib, "libz.a")#pragma comment( lib, "libfaac.a")#pragma comment( lib, "libgsm.a")#pragma comment( lib, "libmp3lame.a")#pragma comment( lib, "libogg.a")#pragma comment( lib, "libspeex.a")#pragma comment( lib, "libtheora.a")#pragma comment( lib, "libvorbis.a")#pragma comment( lib, "libvorbisenc.a")#pragma comment( lib, "libx264.a")#pragma comment( lib, "xvidcore.a")#pragma comment( lib, "wsock32.lib")#pragma comment( lib, "vfw32.lib")