请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

「强烈推荐」傻瓜式编译Android下可用的FFmpeg

在搜索了各种文章资料,下载了各种版本FFmpeg、ndk后还是出现各种编译问题,之前也编译过ijkplayer,很轻松就配置好编译成功了。这次肯定是姿势不对haha~


这里推荐大家使用avbuild,可用直接使用最新的FFmpeg、最新的ndk,不用再关心这些版本问题

下面简单介绍一下使用方法:我的环境是mac,linux和windows的没试过,应该也没问题

默认大家都简单了解了(知道有这回事就好):
交叉编译、编译器(gcc、clang)、环境变量(ndk、FFmpeg的路径)、android不同架构(x86、x86_64、arm64等)

默认大家都下载了最新的
FFmpeg -> 4.1
ndk -> ndk r19


可以开始了

  1. clone或下载avbuild代码,进入avbuild wiki
  2. 配置各种环境变量
    打开终端,输入以下环境变量
    
    # 配置ndk路径
    export ANDROID_NDK=/path/to/ndk  # 替换成你自己的路径
    # 配置ffmpeg路径
    export FFSRC=/path/to/ffmpeg    # 替换成你自己的路径
    # 可选:配置编译器
    export USE_TOOLCHAIN=clang   #这里使用clang
    
  3. 开始编译
在avbuild目录中执行以下命令,具体参考他的wiki
./avbuild.sh android "armv7-clang arm64"  # clang build for armv7, gcc build for arm64

然后等着就编译成功啦~

图片描述

图片描述


关于配置支持的格式

在avbuild.sh中可以找
config.sh and config-${target_platform}.sh is automatically included. config-lite.sh is for building smaller libraries.

如果需要编译android平台,在目录下添加一个config-android.sh就可以了,具体的配置可以根据需要修改,也可以简单把config-lite.sh中的内容复制过去


如果你遇到问题,可以在下方留言哦

正在回答 回答被采纳积分+3

3回答

文川雪 2019-10-01 15:59:29

你这个是不是要在Linux下交叉编译出android平台的,直接在window下不行,要安装msys,我还以为多傻瓜呢

0 回复 有任何疑惑可以回复我~
大圣归来2019 2019-05-08 18:20:16

大神你好 如果ffmpeg+x264在linux下编译 该怎么配置

0 回复 有任何疑惑可以回复我~
李超 2019-05-08 16:46:15

赞,大家可以试试!

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信