我是靠谱客的博主 跳跃手机,这篇文章主要介绍FFmpeg (3.4.1)安卓编译 ndk(14b),现在分享给大家,希望可以做个参考。

1:下载ffmpeg 源码
http://ffmpeg.org/download.html
2:下载ndk, 14b 用16b没有成功
https://developer.android.google.cn/ndk/downloads/
3:加压源码ffmpeg-4.1(udp.c 出错), 建议用3.4.1
修改配置文件config
(修改生成so的名字,android 不能以数字结尾如,avdecodec.so.57)

注释这四行
#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)'

4:写一个脚本arm_android.sh

#!/bin/bash
# 修改自己的路径
NDK=/home/zl/app/android-ndk-r14b
# 修改想用的版本
SYSROOT=$NDK/platforms/android-19/arch-arm/
CPU=armv7-a
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
PREFIX=$(pwd)/android/$CPU
OPTIMIZE_CFLAGS="-mfloat-abi=softfp -mfpu=vfp -marm -march=$CPU "

./configure 
--prefix=$PREFIX 
--enable-neon 
--enable-hwaccels 
--enable-shared 
--enable-jni 
--enable-mediacodec 
--enable-decoder=h264_mediacodec 
--disable-static 
--disable-doc 
--enable-ffmpeg 
--disable-ffplay 
--disable-ffprobe 
--enable-avdevice 
--disable-doc 
--disable-symver 
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- 
--target-os=android 
--arch=arm 
--cpu=armv7-a 
--enable-cross-compile 
--sysroot=$SYSROOT 
--extra-cflags="-Os -fpic $OPTIMIZE_CFLAGS" 
--extra-ldflags="$ADDI_LDFLAGS" 
$ADDITIONAL_CONFIGURE_FLAG

5: sudo make
#目标文件在当前文件下android
6: sudo make install

最后

以上就是跳跃手机最近收集整理的关于FFmpeg (3.4.1)安卓编译 ndk(14b)的全部内容,更多相关FFmpeg内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部