配置NDK环境之类的不再这里细说 网上有很多
把ffmpeg源码复制到工程的jni的目录下,在ffmpeg目录下建立文件config.sh,内容如下:
./configure --disable-static --enable-shared --enable-gpl --enable-version3 --enable-nonfree --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-avdevice --disable-avfilter --disable-postproc --enable-small --cross-prefix=/opt/android-ndk-r6b/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi- --enable-cross-compile --target-os=linux --extra-cflags='-I/opt/android-ndk-r6b/platforms/android-8/arch-arm/usr/include' --extra-ldflags='-L/opt/android-ndk-r6b/platforms/android-8/arch-arm/usr/lib -nostdlib' --arch=arm --disable-symver --disable-debug --disable-strippingsed -i 's/HAVE_LRINT 0/HAVE_LRINT 1/g' config.hsed -i 's/HAVE_LRINTF 0/HAVE_LRINTF 1/g' config.hsed -i 's/HAVE_ROUND 0/HAVE_ROUND 1/g' config.hsed -i 's/HAVE_ROUNDF 0/HAVE_ROUNDF 1/g' config.hsed -i 's/HAVE_TRUNC 0/HAVE_TRUNC 1/g' config.hsed -i 's/HAVE_TRUNCF 0/HAVE_TRUNCF 1/g' config.h
以下几个属性需要根据ndk安装的位置做相应的修改
cross-prefix
extra-cflags
extra-ldflags
注意:这三个要根据自己的NDK放在那里做修改
再终端工程路径下执行:
chmod +x config.sh
./config.sh再把android.mk复制到ffmpeg目录下执行ndk-build即可现在ffmpeg已经更新到0.10.2,我用的是0.10config.sh下载地址
android.mk下载地址
ffmpeg0.10下载地址