ffmpeg在android下编译
1、下载源码,在百度上搜索下载最新的源码(我下的是2.72的),ffmpeg的源码在不断的更新,每个版本更新都会标明作了什么修改,可以查更新日志

2、准备好编译环境,就是android的ndk编译工具链,还有ffmpeg的编译脚本
参考下面的编译脚本,具体编译链可以换成自己电脑的,编译选项也可以按实际自己要求去修改
#!/bin/bash
SYSROOT=$NDK/platforms/android-9/arch-arm/
TOOLCHAIN=/root/android/androidcrosstool
function build_one
{
./configure \
--prefix=/root/android/ffmpeg-2.7.2/android/armv7-a \
--enable-shared \
--disable-static \
--disable-programs\
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-doc \
--disable-htmlpages\
--disable-manpages \
--disable-podpages \
--disable-txtpages \
--disable-everything \
--enable-swresample \\
--disable-debug \
--disable-symver \
--enable-memalign-hack \
--enable-gpl \
--enable-nonfree \
--enable-version3 \
--enable-asm \
--enable-cross-compile \
--enable-filter=scale \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--target-os=linux \
--arch=arm \
--cpu=armv7-a \
--enable-neon\
--sysroot=$SYSROOT \
--extra-cflags=" -march=armv7-a -mfpu=neon " \
--extra-ldflags="-Wl, -lc -lm -ldl -llog " \
$ADDITIONAL_CONFIGURE_FLAG
}
CPU=armv7-a
PREFIX=$(pwd)/android/$CPU
build_one
这里默认选项的配置,在终端下运行这个配置脚本,如下图2所示,表示配置通过


3、接下来开始编译了,在终端下输入以下命令
make -j8
因为是默认选项的编译,没作编解码库的删减,编译时间要等一段时间,等待编译完成吧


4、编译完成后,如下图所示,可以看到它生成了很多动态库

5、然后是,安装ffmpeg的开发库和头文件,其实是将编译好的库和头文件复制到指定的目录中,到这里编译完成了

