首页 > 系统 > Android > 正文

Ubuntu 14.04 Build FFmpeg with ndk for Android

2019-11-06 07:50:32
字体:
来源:转载
供稿:网友

Requirement install NDK

更改ffmpeg下的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)'

Create a mybuild.sh file under ffmpeg folder 可參考下面修改 _ 1. NDK 2. SYSROOT 3. TOOLCHAIN

三者依照使用者做修改 _

#!/bin/bashNDK=/home/cmake/Android/Sdk/ndk-bundleSYSROOT=$NDK/platforms/android-15/arch-arm/TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64function ()build_one{./configure /--prefix=$PREFIX /--disable-shared /--enable-static /--disable-doc /--disable-ffmpeg /--disable-ffplay /--disable-ffprobe /--disable-ffserver /--disable-avdevice /--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_FLAGmake cleanmake -jmake install}CPU=armPREFIX=$(pwd)/android/$CPUADDI_CFLAGS="-marm"build_one

使用SH指令時

sudo sh mybuild.sh

Bug Bash script error: “function: not found”. Why would this appear? 補上() 就可以避免

function ()build_one {...}

使用bash指令時

sudo ./mybuild.sh

PREFIX =為輸出路徑

IMPORTANT

每次編譯後需複製config.h 之後移植需要使用


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表