FFmpeg全新系列之3.2.2版本于CentOS6.5安装并实现Android移植编译-秒懂-你-逆袭必备

前情提要:NDK已正确安装,并配置好编译环境变量
一、下载ffmpeg源码: http://www.ffmpeg.org/download.html

二、解压至文件目录/usr/local/ffmpeg
[root@localhost ffmpeg]# tar xvf ffmpeg-3.2.2.tar.bz2 
并命名为:3.2.2
[root@localhost ffmpeg]# mv ffmpeg-3.2.2/ 3.2.2

三、修改其配置文件configure 保证其编译出.so文件而非.so.xx文件
[root@localhost 3.2.2]# gedit configure 

照此图做以下调整:
SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)'  
LIB_INSTALL_EXTRA_CMD='$$(RANLIB)"$(LIBDIR)/$(LIBNAME)"'  
SLIB_INSTALL_NAME='$(SLIBNAME_WITH_VERSION)'  
SLIB_INSTALL_LINKS='$(SLIBNAME_WITH_MAJOR)$(SLIBNAME)'
替换为
SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(FULLNAME)-$(LIBMAJOR)$(SLIBSUF)'  
LIB_INSTALL_EXTRA_CMD='$$(RANLIB)"$(LIBDIR)/$(LIBNAME)"'  
SLIB_INSTALL_NAME='$(SLIBNAME_WITH_MAJOR)'  
SLIB_INSTALL_LINKS='$(SLIBNAME)'
退出、保存!

四、在ffmpeg目录下,新增Android编译脚本,build_android.sh

#!/bin/bash
NDK=/usr/local/android/ndk/r12b
SYSROOT=$NDK/platforms/android-9/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
function build_one
{
./configure \
    --prefix=$PREFIX \
    --enable-shared \
    --disable-static \
    --disable-doc \
    --disable-ffmpeg \
    --disable-ffplay \
    --disable-ffprobe \
    --disable-ffserver \
    --enable-avdevice \
    --enable-gpl \
    --disable-doc \
    --disable-symver \
    --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
    --target-os=linux \
    --arch=arm \
    --enable-cross-compile \
    --sysroot=$SYSROOT \
    --extra-cflags="-Os -fpic $ADDI_CFLAGS" \
    --extra-ldflags="$ADDI_LDFLAGS" \
    $ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS="-marm"
build_one
具体编译脚本的相关参数将会在后续的文章中在做单独讲解

五、修改下build_android.sh 权限
[root@localhost 3.2.2]# chmod a+x build_android.sh

六、执行编译操作
[root@localhost 3.2.2]# ./build_android.sh 
此过程依据你计算机的性能,时间可能会要5分钟左右的时间

该命令执行完毕后,会在ffmpeg的根目录下的/android/arm/下生成相应的头文件以及so文件,如下图所示

这些文件拷贝出来放至Android的ndk工程中即可开发使用了!

此文原创~转载请注明出处!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值