环境准备
(1)NDK => 21.4.7075529
(2)操作系统 => Kali, Ubuntu, Debian
1.下载libx264源码
源码下载地址:https://www.videolan.org/developers/x264.html
#Git下载
git clone https://code.videolan.org/videolan/x264.git
2.编写编译脚本
在源码目录,也就是跟源码里的configure文件同一级目录里新建build.sh
#!/bin/bash
###########根据自己电脑环境进行修改, 确保CC,CXX文件存在################Start
export API=21
export NDK=/root/Android/Sdk/ndk/21.4.7075529
#这个HOST_TAG也就是$NDK/toolchains/llvm/prebuilt目录下的文件名
export HOST_TAG=linux-x86_64
export TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/$HOST_TAG
#Android Cpu Type:aarch64, armv7a, i686, x86_64, 如果构建armv7a,请将API改为eabi21
export CPU=i686
export OUTPUT=/home/qlx/x264_build
export CC=$TOOLCHAIN/bin/$CPU-linux-android$API-clang
export CXX=$TOOLCHAIN/bin/$CPU-linux-android$API-clang++
#########################################################################End
function build
{
./configure \
--prefix=$OUTPUT/$CPU \
--enable-static \
--enable-pic \
--disable-asm \
--disable-opencl \
--disable-cli \
--host=$CPU-linux \
--cross-prefix=$TOOLCHAIN/bin/$CPU-linux-android- \
--sysroot=$TOOLCHAIN/sysroot \
make clean
make
make install
}
build
echo build finished
3.执行脚本
chmod +x build.sh
./build.sh
如果编译顺利的话,会在OUTPUT目录中生include头文件和lib库文件,得到x264.h和libx264.a静态库文件
如果你需要将libx264加入到FFmpeg里的编译的话,也许可以看一下下面的教程
(1)Android FFmpeg编译时导入libx264
如果你还没有成功编译和使用FFmpeg,可以参考我的另一篇文章
(2) Android NDK编译和导入FFmpeg源码
网友评论