FFMPEG android 多CPU架构快速编译方案

前面文章我们已经构架了ffmpeg在android下的编译方案,本文介绍一下ffmpeg视频开发中多CPU架构编译的一些注意事项和应用开发的一些注意事项。

在android下,通常有arm,armv7,armv8a,x86等架构。尤其中间两种在嵌入式中用得越来越多。要想编译进去,需要注意以下几点:

1. NDK的编译版本至少要大于等于r10,建议使用r10e. 这是因为在早期的版本中,并不支持64位CPU架构。

2. 在编译ffmpeg的时候,需要设置pkgconfig的支持,具体请参考我的编译脚本

3. 在编译下x264的时候,如果使用了armv8a 64 系统需要对neno和asm支持,这是因为在新的架构中做了大量的优化,不然configure可能无法通过,同时需要注意编译器链接的位置和库安装的目录保持一致。

贴上支持多架构的编译主脚本,其他脚本请访问我的github获取

https://github.com/Car-eye-team/Car-eye-FFMPEG

#!/bin/bash
. abi_settings.sh $1 $2 $3

pushd ffmpeg
make clean

./configure \
--cross-prefix="$CROSS_PREFIX" \
--sysroot="$NDK_SYSROOT" \
--enable-libfreetype \
--disable-avdevice \
--enable-small \
--disable-vda \
--disable-iconv \
--disable-outdevs \
--enable-pic \
--enable-libx264 \
--enable-neon \
--enable-yasm \
--enable-gpl \
--disable-debug \
--disable-ffserver \
--disable-ffmpeg \
--disable-ffplay \
--disable-ffprobe \
--disable-symver \
--disable-doc \
--enable-static \
--disable-shared \
--enable-postproc \
--target-os=android \
--arch="$NDK_ABI" \
--enable-cross-compile \
--pkg-config="${2}/ffmpeg-pkg-config" \
--prefix="${2}/build/${1}" \
--extra-cflags="-I${TOOLCHAIN_PREFIX}/include -I${TOOLCHAIN_PREFIX}/include/freetype2 " \
--extra-ldflags="-L${TOOLCHAIN_PREFIX}/lib  " \
--extra-libs="-lpng " \
--extra-cxxflags="$CXX_FLAGS" || exit 1
make  && make install && make clean || exit 1
popd

有关详细的ffmpeg音视频开发SDK的源码,请参考我前面文章



FFMEPG 平台移植,接口简化和外部模块接入 (二)ffmpeg android移植(JNI 开发环境建立)

FFMEPG 平台移植,接口简化和外部模块接入 (三)ffmpeg android移植(ffmpeg实现水印文字显示)


FFMEPG 平台移植,接口简化和外部模块接入 (四)ffmpeg android移植(ffmpeg 视频编码)

FFMEPG 平台移植,接口简化和外部模块接入 (二)ffmpeg android移植(JNI 开发环境建立)

car-eye开源官方网址:www.car-eye.cn   

car-eye 流媒体平台网址:www.liveoss.com    

car-eye 技术官方邮箱: support@car-eye.cn    
car-eye技术交流QQ群: 590411159     


CopyRight©  car-eye 开源团队 2018






FFMEPG 平台移植,接口简化和外部模块接入 (二)ffmpeg android移植(JNI 开发环境建立)
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值