window10 android-ndk-r10d 编译ffmpeg 3.4
原文:https://blog.csdn.net/dnybz/article/details/78520859
准备工作
1、安装NDK r10d 版本 下载
解压NDK到 D:\Android\android-ndk-r10d 目录
2、安装 mingw32 位版本 下载
勾选如下图三个选项,然后 点击菜单 “Installlation->Apply Changes” 开始下载所需安装包
3、下载 ffmpeg-release-3.4 下载
然后解压到 D:\Android\FFmpeg-release-3.4
创建 编译脚本 “D:\Android\FFmpeg-release-3.4\build_android_armv7-a.sh” 文件编码为 UTF8 无BOM格式
- #!/bin/bash
- FFMPEG_ROOT=`pwd`
- export TMPDIR=$FFMPEG_ROOT/tmpdir
- mkdir $TMPDIR
- NDK=D:/Android/android-ndk-r10d
- SYSROOT=$NDK/platforms/android-18/arch-arm/
- TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64
- CPU=arm
- PREFIX=$FFMPEG_ROOT/output/$CPU
- EXTRA_CFLAGS="-fdata-sections -ffunction-sections -fstack-protector-strong -ffast-math -fstrict-aliasing -march=armv7-a -mtune=cortex-a8 -mfloat-abi=softfp -mfpu=vfpv3-d16 -D__ANDROID_API__=18 --sysroot $NDK_ROOT/sysroot -isystem $NDK_ROOT/sysroot/usr/include/arm-linux-androideabi"
- EXTRA_LDFLAGS="-Wl,--gc-sections -Wl,-z,relro -Wl,-z,now -Wl,--fix-cortex-a8 --sysroot $NDK_ROOT/platforms/android-18/arch-arm"
- function build_one
- {
- ./configure \
- --prefix=$PREFIX \
- --disable-debug \
- --enable-shared \
- --enable-static \
- --enable-asm \
- --enable-neon \
- --disable-doc \
- --disable-ffmpeg \
- --disable-ffplay \
- --disable-ffprobe \
- --disable-ffserver \
- --disable-doc \
- --disable-symver \
- --enable-pthreads \
- --enable-small \
- --enable-jni \
- --disable-v4l2_m2m \
- --enable-avresample \
- --disable-postproc \
- --enable-thumb \
- --enable-mediacodec \
- --enable-runtime-cpudetect \
- --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
- --target-os=android \
- --arch=$CPU \
- --enable-cross-compile \
- --sysroot=$SYSROOT \
- --extra-cflags="$EXTRA_CFLAGS" \
- --extra-ldflags="$EXTRA_LDFLAGS" \
- $ADDITIONAL_CONFIGURE_FLAG
- make clean
- make
- make install
- }
- build_one
源码编译
1、运行 D:\MinGW\msys\1.0\msys.bat
进入ffmpge 源码目录
1 | cd /d/Android/FFmpeg-release-3 .4 |
把编译脚本添加执行权限
1 | chmod a+x build_android_armv7-a.sh |
执行编译脚本
1 | . /build_android_armv7-a .sh |
编译生成文件 D:\Android\FFmpeg-release-3.4\output
编译好文件 下载