编译 ffmpeg 静态库

对大家可能有帮助的零碎的记录:

.a 与 .lib 的区别,如何通用:http://www.chinavideo.org/archiver/?tid-2934.html

官方编译 windows 下的教程:http://www.ffmpeg.org/platform.html

mingw32 编译器:http://www.drangon.org/mingw/

基于 Ubuntu 交叉编译 FFmpeg Windows SDK:http://www.cnblogs.com/haibindev/archive/2011/12/01/2270126.html

MinGW下编译ffmpeg静态库给Visual C++使用(修改版):http://www.tuicool.com/articles/EvieYb

.lib 转 .a:http://blog.csdn.net/lzhlzz/article/details/6096931

.dll 转 .lib(静态库,不是符号表):http://blog.163.com/aiding_001/blog/static/22908192009885771/

请参考:http://blog.csdn.net/wangjia184/article/details/7931164,编译即可

请参考:官网或者是 http://www.cnblogs.com/xylc/p/3683203.html,编译即可


声明:由于公司网络不能登录 SourceForge 和 google 导致很多工具不能下载(我家里可以:)),因此我把工具已经全部安装到公司里面了。

一、材料:

1.MinGW 编译器 + msys,版本 4.8.1 或以上,直接用 MinGW 官网上的自动下载器安装;

2.C99-to-C89 Converter & Wrapper,从官网下;

3.yasm for Win32,官网……

4.VS2008 以上,最好是 VS2010

5.ffmpeg,官网 Git 下载,恢复成你要用的版本

二、准备:

1.设置 MinGW 环境变量到 PATH,设置对象为 D:\MinGW\bin 以及 D:\MinGW\msys\1.0\bin

2.修改 MinGW 中的 msys.bat,在最前面加入:call "F:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"

3.将 yasm、c99conv.exe、c99wrap.exe、makedef 放入 D:\MinGW\bin,并修改 D:\MinGW\msys\1.0\bin 中的 link.exe 为任意别名

4.将 ffmpeg 放入 D:\MinGW\msys\1.0\home\pc 下,cd 进入并且 “git --reset hard” 加上“你的版本 MD5 码值”

三、开工:

1.配置交叉编译选项

./configure --prefix=/home/pc/FFmpegSDK --enable-gpl --enable-version3 --enable-nonfree --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-pthreads --disable-os2threads --enable-dxva2 --enable-vda --enable-vdpau --disable-everything --enable-decoder=mjpeg --enable-decoder=h264 --enable-decoder=adpcm_g726 --enable-decoder=aac --enable-decoder=pcm_alaw --enable-encoder=mjpeg --enable-encoder=h264 --enable-encoder=adpcm_g726 --enable-encoder=aac --enable-encoder=pcm_alaw --enable-muxer=matroska --enable-demuxer=matroska --toolchain=msvc --enable-memalign-hack --disable-debug
2.make,make install,然后在相应目录下取得 *.h 和 *.a,并把生成的 config.h、inttypes.h 也拿过来

3.建立 VS2010 静态库工程,加入 config.h 以及一个空的 c 文件,配置工程属性额外的包含文件目录和库文件目录,设置为刚才得到的文件所在目录

4.配置 VS2010 属性,库管理器中,重点配置编译依赖库为“是”(以下是插图),优化方面可自行斟酌配置,略过


5.编译生成 .lib,如果遇到警告或者错误导致失败,少头文件或者是冲突等,按编译器给的提示添加即可,无需修改代码,重复 5 直到完成!

四、恢复:

把 “二、准备:” 中做的事该撤销的撤销,自己决定即可。

你可能感兴趣的:(音视频处理)