【音视频安卓开发 (零)】用 Android NDK 编译 FFmpeg 与 X264

下载相关构建和工具链

1.先下载NDK

Google Android

2.在Windows端下载使用msys2,msys2支持Linux

msys2

安装相关源,等待更新要很久.....慢慢等

pacman -S mingw-w64-x86_64-toolchain

然后执行以下命令安装

pacman -S base-devel

如果下载过慢或者不成功可以修改软件源

更新源

清华源

中科大源

修改mirrorlist.msys

利用UltraEdit或者类似工具打开这mirrorlist.msys文件。在最上面,注意是最上面增加

Server = https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/$arch

修改mirrorlist.mingw32

修改mirrorlist.mingw64

应用更新

重新运行D:\msys64\msys2.exe。然后再运行好的环境中输入下列命令,更新即可。现在真的是速度飞快。

pacman -Syu

安装汇编

pacman -S nasm

下载FFmpeg源码选择最新版

FFmpeg官方下载

将下载的源码放到msys的home文件目录下,并且创建一个脚本文件,如下

basepath=$(cd 'dirname $0';pwd)
echo ${basepath}

cd ${basepath}/ffmpeg_4.3.1
ls

ANDROID_NDK_HOME=/c/NDK/21.3.6528147  NDK具体位置,需要和开发使用NDK版本一致
HOST=windows-x86_64  平台相关
ARCH=armv7a
ABI=21

./configure \
--prefix=${basepath}/ffmpeg_install \  输出路径
--target-os=android \
--arch=arm \
--cc=${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/${HOST}/bin/${ARCH}-linux-androideabi${ABI}-clang \
--cross-prefix=${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/${HOST}/bin/arm-linux-androideabi- \
--enable-shared \
--enable-runtime-cpudetect \
--enable-gpl \
--enable-small \
--enable-cross-compile \ 允许交叉编译
--enable-asm \
--enable-neon \
--enable-jni \
--enable-mediacodec \
--enable-decoder=h264_mediacodec \
--enable-hwaccel=h264_mediacodec \
--disable-debug \
--disable-static \
--disable-doc \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-ffserver \
--disable-postproc \
--disable-avdevice \
--disable-symver \
--disable-stripping 

make -j12
make install

X264编译脚本

basepath=$(cd 'dirname $0';pwd)
echo ${basepath}

cd ${basepath}/x264-master
ls

./configure --prefix=${basepath}/X264_instal --enable-static
make -j 12
make install

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

༄yi笑奈何

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

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

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

打赏作者

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

抵扣说明:

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

余额充值