ffmpeg移植

ffmpeg移植到android

1、在config.h的#define av_restrict restrict前加一句,#define restrict;或者直接#define av_restrict。

2、libavutil/libm.h删除所有static方法。

3、libavutil/time.h更名,我改的是avtime.h;原因是与系统头文件冲突了,libavutil中的文件引用<time.h>本意是引用系统头文件,被同目录下的与系统同名的头文件覆盖。

4、相应地将引用libavutil/time.h的地方修改为libavutil/avtime.h。


加上汇编优化的方法:

方法一:在libavcode、libavutil、libavformat的Makefile中直接加上./arm/Makefile的内容。

方法二:在av.mk中-include $(LOCAL_PATH)/arm/Makefile;再修改arm/Makefile中相应优化选项的目标为OBJS。

方法二比较死板,还需要改进。


window下使用ndk需要注意的:

1、需要在配置脚本中指定临时路径

export TMPDIR="d:/android_ndk/temp"

2、ndk build时可能会出现argument list is too long,这个是windows系统限制。

可以在配置脚本中关掉一些目标进行编译。如--disable-muxers关掉所有的复用器。

你可能感兴趣的:(ffmpeg移植)