版本信息
x264(视频编码):好像没有版本号这一说
nasm(编译x264的依赖):nasm-2.14rc16
faac(音频编码):faac-1.29.9.2
编译的系统:centos
编译的NDK版本:17R
AndroidStudio:3.5
需要了解的背景
Nginx+Nginx-rtmp-module搭建RTMP视频直播服务器
环境搭建
AndroidStudio中新建C++的项目备用。
交叉编译x264
获取:git clone https://code.videolan.org/videolan/x264.git
进入到x264的目录,编写编译脚本build.sh,路径要和自己的环境匹配,不可照搬。
#!/bin/bash
PREFIX=./android/armeabi-v7a
NDK_ROOT=/ndk/android-ndk-r17c
TOOLCHAIN=$NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
FLAGS="-isysroot $NDK_ROOT/sysroot -isystem $NDK_ROOT/sysroot/usr/include/arm-linux-androideabi -D__ANDROID_API__=17 -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -Wa,--noexecstack -Wformat -Werror=format-security -O0 -fPIC"
./configure \
--prefix=$PREFIX \
--disable-cli \
--enable-static \
--enable-shared \
--enable-pic \
--host=arm-linux \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--sysroot=$NDK_ROOT/platforms/android-17/arch-arm \
--extra-cflags="$FLAGS"
make clean
make install
如果执行之后&