1 下载fdk-aac源码
https://nchc.dl.sourceforge.net/project/opencore-amr/fdk-aac/fdk-aac-0.1.4.tar.gz
下载完成后在linux服务器中解压,我解压后的目录为
/home/dockdroid/dockdroid_code/temp/fdk-aac-0.1.4
2 添加配置编译脚本
2.1 编译armeabi版本
在解压后的目录里添加配置编译脚本:build_32.sh
NDK_HOME=/home/dockdroid/dockdroid_code/temp/android-ndk-r14b
ANDROID_API=android-21
SYSROOT=$NDK_HOME/platforms/$ANDROID_API/arch-arm
ANDROID_BIN=$NDK_HOME/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin
CROSS_COMPILE=${ANDROID_BIN}//arm-linux-androideabi-
basepath=$(cd `dirname $0`; pwd)
echo "$basepath"
CPU=armeabi
CFLAGS=" "
FLAGS="--enable-static --enable-shared --host=aarch64-linux --target=android --disable-asm"
export CXX="${CROSS_COMPILE}g++ --sysroot=${SYSROOT}"
export LDFLAGS=" -L$SYSROOT/usr/lib $CFLAGS "
export CXXFLAGS=$CFLAGS
export CFLAGS=$CFLAGS
export CC="${CROSS_COMPILE}gcc --sysroot=${SYSROOT}"
export AR="${CROSS_COMPILE}ar"
export LD="${CROSS_COMPILE}ld"
export AS="${CROSS_COMPILE}gcc"
./configure $FLAGS \
--enable-pic \
--enable-strip \
--prefix=${basepath}/android/$CPU
make clean
make -j32
make install
2.1 编译arm64-v8a版本
在解压后的目录里添加配置编译脚本:build_64.sh
NDK_HOME=/home/dockdroid/dockdroid_code/temp/android-ndk-r14b
ANDROID_API=android-21
SYSROOT=$NDK_HOME/platforms/$ANDROID_API/arch-arm64
ANDROID_BIN=$NDK_HOME/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin
CROSS_COMPILE=${ANDROID_BIN}/aarch64-linux-android-
basepath=$(cd `dirname $0`; pwd)
echo "$basepath"
CPU=arm64-v8a
CFLAGS=" "
FLAGS="--enable-static --enable-shared --host=aarch64-linux --target=android --disable-asm"
export CXX="${CROSS_COMPILE}g++ --sysroot=${SYSROOT}"
export LDFLAGS=" -L$SYSROOT/usr/lib $CFLAGS "
export CXXFLAGS=$CFLAGS
export CFLAGS=$CFLAGS
export CC="${CROSS_COMPILE}gcc --sysroot=${SYSROOT}"
export AR="${CROSS_COMPILE}ar"
export LD="${CROSS_COMPILE}ld"
export AS="${CROSS_COMPILE}gcc"
./configure $FLAGS \
--enable-pic \
--enable-strip \
--prefix=${basepath}/android/$CPU
make clean
make -j32
make install
2.2 生成的库目录在./android中
3 这个代码其实就是Android系统源码也有
其实就是Android系统Mediacodec里的aac,其源码目录在external/aac中。