x264配置
NDK=/home/fuweicong/Android/android-ndk-r25c
HOST_TAG=linux-x86_64
TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/$HOST_TAG
ANDROID_LIB_PATH="$(pwd)/android"
API=21
function build_android_arm
{
echo "build for android $CPU"
./configure \
--host=$HOST \
--disable-shared \
--enable-static \
--prefix="$ANDROID_LIB_PATH/$CPU" \
--enable-pic \
--enable-strip \
--extra-cflags="-fPIC"
make clean
make -j8
make install
echo "building for android $CPU completed"
}
CPU=armv8-a
HOST=aarch64-linux-android
#export AR=$TOOLCHAIN/bin/aarch64-linux-android-ar
#export AS=$TOOLCHAIN/bin/aarch64-linux-android-as
#export LD=$TOOLCHAIN/bin/aarch64-linux-android-ld
#export RANLIB=$TOOLCHAIN/bin/aarch64-linux-android-ranlib
#export STRIP=$TOOLCHAIN/bin/aarch64-linux-android-strip
export CC=$TOOLCHAIN/bin/aarch64-linux-android$API-clang
export CXX=$TOOLCHAIN/bin/aarch64-linux-android$API-clang++
build_android_arm
ffmpeg配置
#清空上次的编译
make clean
#配置你的NDK路径
export NDK=/home/fuweicong/Android/android-ndk-r25c
TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/linux-x86_64
echo $NDK
#export PKG_CONFIG_PATH=/home/fuweicong/x264/temp/arm64-v8a/lib/pkgconfig:$PKG_CONFIG_PATH
function build_android
{
./configure \
--prefix=$PREFIX \
--target-os=android \
--arch=$ARCH \
--cpu=$CPU \
--disable-asm \
--enable-neon \
--enable-cross-compile \
--enable-shared \
--enable-hwaccels \
--enable-jni \
--pkg-config="pkg-config --static" \
--enable-mediacodec \
--enable-libx264 \
--enable-encoder=libx264 \
--enable-decoder=h264_mediacodec \
--enable-decoder=hevc_mediacodec \
--enable-decoder=mpeg4_mediacodec \
--enable-hwaccel=h264_mediacodec \
--disable-static \
--disable-doc \
--disable-ffplay \
--disable-ffprobe \
--disable-symver \
--disable-ffmpeg \
--enable-gpl \
--cc=$CC \
--cxx=$CXX \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $OPTIMIZE_CFLAGS" \
--disable-vulkan \
--disable-stripping \
--extra-cflags="-Os -fpic $OPTIMIZE_CFLAGS -I$X264_INCLUDE " \
--extra-ldflags="-L$X264_LIB $ADDI_LDFLAGS" \
# --extra-cflags="-I/home/fuweicong/x264/temp/arm64-v8a/lib/include" \
# --extra-ldflags="-L/home/fuweicong/x264/temp/arm64-v8a/lib"
make clean
make -j16
make install
echo "============================build android ffmpeg end=========================="
}
#arm64-v8a 参数配置
ARCH=arm64
CPU=armv8-a
API=21
CC=$TOOLCHAIN/bin/aarch64-linux-android$API-clang
CXX=$TOOLCHAIN/bin/aarch64-linux-android$API-clang++
SYSROOT=$NDK/toolchains/llvm/prebuilt/linux-x86_64/sysroot
CROSS_PREFIX=$TOOLCHAIN/bin/aarch64-linux-android-
PREFIX=$(pwd)/androidaa/$CPU
OPTIMIZE_CFLAGS="-march=$CPU"
export PKG_CONFIG_PATH=//home/fuweicong/x264/android/armv8-a/lib/pkgconfig
X264_INCLUDE=/home/fuweicong/x264/android/armv8-a/include
X264_LIB=/home/fuweicong/x264/android/armv8-a/lib
echo "PKG_CONFIG_PATH:${PKG_CONFIG_PATH}"
# 函数调用
build_android
网友评论