[RK3288][Android6.0] 调试笔记 --- 交叉编译X264及测试

来源:互联网 发布:java笔试选择题及答案 编辑:程序博客网 时间:2024/06/16 01:34

Platform: RK3288
OS: Android 6.0
Kernel: 3.10.92

环境准备:
x264库下载地址: https://www.videolan.org/developers/x264.html
也可以直接用git下载:

git clone git://git.videolan.org/x264.git

NDK下载地址:

http://developer.android.com/ndk/downloads/index.html

注意: 最新版编译会出现兼容性错误(参见[RK3288][Android6.0] 调试笔记 — 交叉编译X264库出错), 这里使用的是

android-ndk-r13b-linux-x86_64

编译方法:
在x264目录下创建build.sh,脚本内容如下:

# !/bin/shexport ARM_NDK=/home/kris/android-ndk-r13bexport SYSROOT=$ARM_NDK/platforms/android-23/arch-arm/export TOOLCHAIN=$ARM_NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64function build_one{    ./configure \        --prefix=$PREFIX \        --enable-shared \        --disable-asm \        --disable-cli \        --host=arm-linux \        --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \        --sysroot=$SYSROOT \        --extra-cflags=-pie \    make clean    make    make install}PREFIX=$(pwd)/android/arm build_one

执行build.sh, 在android/arm下就能看到生成的so文件了。

这里写图片描述

测试程序:
x264库里面自带一个测试程序 example.c, 先编译
#make example

调试:

kris@eco:~/x264$ adb push android/arm/lib/libx264.so.152  /system/lib/libx264.sokris@eco:~/x264$ adb push example /system/bin/kris@eco:~/x264$ adb shellroot@rk3288:/ # example 640x480 </sdcard/test.YUV>/data/test.h264

这里写图片描述

参考:
Android多媒体之三:编译并使用x264库

阅读全文
1 0