您的位置:首页 > 移动开发 > Android开发

编译Android下的ffmpeg

2015-01-19 12:43 357 查看
这两天搞了一下Android的ffmpeg,编译的资料网上很多,但是很杂,记录一下编译过程。

环境: VMware中的Ubuntu

ffmpeg版本: 2.5.3

NDK版本: android-ndk-r10d

整体参照了这位的做法:http://my.oschina.net/wangqin/blog/80345

记录下从中遇到的问题:

1. 执行$ndk/ndk-build中会提示缺少libavutil/ffversion.h:

解决方法:在libavutil下添加ffversion.h,内容如下

#ifndef AVUTIL_FFVERSION_H
#define AVUTIL_FFVERSION_H
#define FFMPEG_VERSION "2.5.3"
#endif /* AVUTIL_FFVERSION_H */


2. 有些会继续报缺少libavutil/time.h文件,直接改为libavutil/cvtime.h即可;

3.
会出现stdlib.h的函数getenv和config.h里的冲突,网上说可以注释掉所有的stdlib.h,我觉得太烦就将stdlib.h里的getenv改成了_getenv;

4. 会出现libavutil的time.o链接问题,想到之前改了time为avtime,到libavutil文件夹里找到Makefile,修改time为avtime.h,time.o为avtime.o,

重新执行config.sh,再重新ndk即可。

OK,整个就编译好了,文件大小6.3M应该成功了。

稍后放出.mk和.so的下载:
http://download.csdn.net/detail/windowpos/8375465
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: