windows系统下, ndk 编译ffmpeg,在android studio中使用

ndk下载

下载地址:https://developer.android.google.cn/ndk/downloads/older_releases

推荐版本:android-ndk-r17c-windows-x86.zip ,这个是32位的,当然也可以下载64位的

下载完成

代码下载

1.可以直接从ffmpeg官网上下载ffmpeg代码

2.可以联系qq:527691055获取

编译

1.脚本文件名:build_android_windows.sh  :可以新建个文本文件,名字命名为build_android_windows.sh

脚本代码如下

 

#!/bin/bash
# ndk路径,需要根据情况修改
export NDK=D:/ffmpeg-4.1-ndk/android-ndk-r17c-windows-x86_64/android-ndk-r17
# make.exe路径,需要根据情况修改
MAKEPATH=D:/ffmpeg-4.1-ndk/android-ndk-r17c-windows-x86_64/android-ndk-r17c/prebuilt/windows-x86_64/bin
PLATFORM=$NDK/platforms/android-16/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64
PREFIX=android
ASM=$ISYSROOT/usr/include/$PLATFORM
API=16
function build_one
{
./configure \
--prefix=$PREFIX \
--target-os=android \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--arch=arm \
--sysroot=$PLATFORM \
--extra-cflags="-I$PLATFORM/usr/include" \
--cc=$TOOLCHAIN/bin/arm-linux-androideabi-gcc \
--nm=$TOOLCHAIN/bin/arm-linux-androideabi-nm \
--enable-static \
--disable-shared \
--enable-ffmpeg \
--enable-ffplay \
--enable-ffprobe \
--disable-doc \
--disable-htmlpages \
--disable-podpages  \
--disable-manpages \
--disable-txtpages \
--disable-symver \
--enable-small \
--enable-gpl \
--enable-asm \
--enable-nonfree \
--enable-version3 \
--enable-avdevice \
--enable-postproc \
--enable-swresample \
--extra-cflags="-I$NDK/sysroot/usr/include/arm-linux-androideabi -isysroot $NDK/sysroot -fPIC -DANDROID -D__thumb__ -mthumb -Wfatal-errors -Wno-deprecated -mfloat-abi=softfp -marm -march=armv7-a -D__ANDROID_API__=$API -U_FILE_OFFSET_BITS" \
--extra-ldflags="$ADDI_LDFLAGS -lcompiler_rt-extras" \

# --disable-everything \

$ADDITIONAL_CONFIGURE_FLAG
$MAKEPATH/make clean
$MAKEPATH//make 
$MAKEPATH/make install
$TOOLCHAIN/bin/arm-linux-androideabi-ld \
-rpath-link=$PLATFORM/usr/lib \
-L$PLATFORM/usr/lib \
-L$PREFIX/lib \
-soname libffmpeg.so -shared -nostdlib -Bsymbolic --whole-archive --no-undefined -o \
$PREFIX/libffmpeg.so \
libavcodec/libavcodec.a \
libavfilter/libavfilter.a \
libavformat/libavformat.a \
libavutil/libavutil.a \
libswscale/libswscale.a \
-lc -lm -lz -ldl -llog -lswresample  -lpostproc -lavdevice --dynamic-linker=/system/bin/linker \
$TOOLCHAIN/lib/gcc/arm-linux-androideabi/4.9.x/libgcc.a
}
# arm v7vfp
CPU=arm   
OPTIMIZE_CFLAGS="-mfloat-abi=softfp -mfpu=vfp -marm -march=$CPU "
ADDI_CFLAGS="-marm"
build_one

 

2.运行脚本

需要安装git ,下载地址: https://npm.taobao.org/mirrors/git-for-windows/v2.27.0.windows.1/

不要从官网下载,官网下载比较慢

 

打开git bash,进入 build_android_windows.sh  脚本所在目录,输入运行脚本命令 sh build_android_windows.sh,等待编译完成

我这边的文件名是build_android.sh,这个大家不要建议

mac编译和linux编译脚本我这都有,可以qq联系我获取:527691055

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三希

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值