我们编译ffmpeg的过程是这样的,将交叉编译链拷贝整个拷贝一份到系统的临时目录下/tmp的vplayer中(交叉编译链的结构其实蛮有意思,我在另一篇博客中会好好分析)
DEST , 生成的ffmpeg共享库libffmpeg.so保存的路径
SOURCE, ffmpeg源代码的路径
TOOLCHAIN ,用来保存交叉编译链的目录路径
SYSROOT , 用来保存交叉编译练进行链接步骤时查找库文件的路径
EXTRA_CFLAGS,用来帮助我们将264集成到ffmpeg时,查找264头文件的路径
EXTRA_LDFLAGS,ffmpeg查找264静态库的路径
其他的变量估计都是见名知意的了,不明白的可以给我留言。
OK,编写完脚本后,先执行 config-ffmpeg-Android.sh 脚本,对ffmpeg进行配置
PS. 如果执行配置脚本时,遇到诸如 ” c compiler failed ....“ 之类的错误,多半是你配置脚本中某个变量的路径错了。
配置脚本执行完后,会打印出ffmpeg的配置信息:如图
从encoders 或者decoders中可以看出来,我们的ffmepg已经成功配置上了264
编译完成后,会出现一个警告如下图,这个可以忽略。
(3)配置脚本config-ffmpeg-andorid.sh 执行完后,还需要修改ffmpeg目录下的config.h文件,同样是修改 HAVE_LOGx的宏值
----#define HAVE_LOG2 1
----#define HAVE_LOG2F 1
----#define HAVE_LOG10F 1
+++#define HAVE_LOG2 0
+++#define HAVE_LOG2F 0
+++#define HAVE_LOG10F 0