您的位置:首页 > 其它

视频编码器:编译libx264

2016-09-06 09:17 162 查看
x264是最常用的H.264视频编码器,在当今点播、直播非常火热的时代,x264的用途非常广泛,本文介绍libx264的相关编译。

一、使用NDK编译x264库

1.在ubuntu下配置android ndk环境变量

我是在ubuntu 16.0.4下安装的,在WIN下要装cygwin,会麻烦很多,不推荐。

更具体的安装与配置参考:《Ubuntu下Android NDK的安装及配置

2.libx264的下载和编译

进入X264的官网下载最新版本,官网地址:http://www.videolan.org/developers/x264.html




解压到 /home/davebobo目录

$ sudo tar -C /home/davebobo -xjvf last_x264.tar.bz2  解压后的文件夹为x264-snapshot-20160905-2245

进入 /home/davebobo/x264-snapshot-20160905-2245 目录

创建ndk_build_x264_config.sh

代码如下:
#!/bin/bash
NDK=/home/davebobo/android-ndk-r10b
SYSROOT=$NDK/platforms/android-L/arch-arm
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64

function build_one
{
./configure \
--prefix=$PREFIX \
--enable-shared \
--disable-asm \
--enable-pic \
--enable-strip \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--host=arm-linux-androideabi \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $ADDI_CFLAGS" \
--extra-ldflags="$ADDI_LDFLAGS" \
$ADDITIONAL_CONFIGURE_FLAG
}
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS=""
build_one
注意shell不能有多余的空格!

【保存并退出】

注意:

NDK、SYSROOT、TOOLCHAIN要改为你的ndk的相关安装目录;

另外修改.configure中

    echo "SOSUFFIX=so" >> config.mak

    echo "SONAME=libx264.so.$API" >> config.mak

    echo "SOFLAGS=-shared -Wl,-soname,\$(SONAME) $SOFLAGS" >> config.mak

这一行 echo "SONAME=libx264.so.$API" >> config.mak ,

改成: echo "SONAME=libx264.so" >> config.mak

然后执行:

$ chmod a+x ndk_build_x264_config.sh

$ ./ndk_build_x264_config.sh     

$ make

$ make install

ok,编译成功!

使用ndk编译成功的libx264:http://download.csdn.net/detail/davebobo/9629230
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: