ndk编译android可用的libjpeg.so

最近实现了一款基于FFMpeg的支持多路视频的实时流媒体播放器:https://github.com/huweijian5/RtspPlayer 
有兴趣可以关注下。


最近使用ffmpeg做个rtsp播放器,需要个抓图功能,听说turbo libjpeg效率比较高,于是乎编译一个来试试:(需要先安装好git和ndk以及它们的环境配置)

1

clone最新版libjpeg-trubo的Android版分支

使用git命令:

git clone git://git.linaro.org/people/tomgall/libjpeg-turbo/libjpeg-turbo.git -b linaro-android

2

下载下来后把文件夹libjpeg-turbo重命名为jni,

3

使用命令:

ndk-build APP_ABI=armeabi-v7a,armeabi



成功后就会多生成两个文件夹libs和obj,在libs下可以找到需要的libjpeg.so

然后把jni文件夹所有头文件提取出来就可以愉快地使用了。

在编译过程中我出现了找不到size_t和FILE的声明,在报错的头文件中把#include <stdio.h>包含进来就可以了。


资源地址:http://download.csdn.net/detail/huweijian5/9672427

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
一、先添加库libjpeg.so for arm: 交叉编译libjpeg 交叉编译工具 版本:3.4.1 路径:/usr/local/arm/3.4.1/bin 编译libjpeg前要确保系统装了libtool库。否则编译不成功。 1、下载libjpeg源码:ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz 2、解压缩 jpegsrc.v6b.tar.gz 3、进入/jpeg-6b目录配置: ./configure --host=arm-linux --enable-shared --prefix= TARGETDIR 4、进入自动生成的Makefile,修改 CC= arm-linux-gcc AR= arm-linux-ar AR2=arm-linux-ranlib 5、在TARGETDIR目录下建立 man/man1,include,lib,bin四个目录 6、#make #make install 7、将/TARGETDIR/include/中(jconfig.h, jerror.h, jmorecfg.h, jpeglib.h)四个头文件拷贝到:/usr/local/arm/3.4.1/arm-linux/include中。 将/TARGETDIR/lib中(libjpeg.la, libjpeg.so, libjpeg.so.62, libjpeg.so.62.0.0)中库文件拷贝到:/usr/local/arm/3.4.1/arm-linux/lib中。 注意:执行以下命令检查生成的libjpeg.so是否为ARM版: 下为正确输出,否则检查交叉编译器路径以及Makefile并重新编译。 file libjpeg.so libjpeg.so: ELF 32-bit LSB shared object, ARM, version 1 (ARM), not tripped 注意:执行完以上操作后执行以下命令检查库文件是否已正确安装: arm-linux-gcc -print-file-name=libjpeg.so 如果输出为"libjpeg.so"则说明没有正确安装,重复7步骤。 如果输出为"DIR/libjpeg.so"则说明安装正确。 二、编译采集图像小程序 小程序在:http://blog.chinaunix.net/u3/93660/showart_1860238.html 1、交叉编译: #arm-linux-gcc test.c -o test -I /usr/local/arm/3.4.1/arm-linux/include -L /usr/local/arm/3.4.1/arm-linux/lib 2、将生成的可执行文件和libjpeg等三个库文件拷贝到板子上执行。ok,done!
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值