zoukankan      html  css  js  c++  java
  • 嵌入式 linux 移植修改后的libjpeg 实现内存中解码

    1、修改libjpeg源码,使之实现内存解码。

        修改libjpeg中读取或者输出jpeg文件的函数接口文件jdatadst.c和jdatasrc.c见下面这篇帖子。

        http://blog.163.com/seven_7_one/blog/static/1626064122010113111725461/

        修改后,jpeg_stdio_des和jpeg_stdio_src函数我们就修改完毕了。但是在libjpeg库中有两个测试文件cjpeg.c和djpeg.c会调用原来的jpeg_stdio_des和jpeg_stdio_src函数,这在编译时会报错的,所以我们需要自己将cjpeg.c和djpeg.c里边的jpeg_stdio_des和jpeg_stdio_src函数调用注释掉,或者修改。

        然后就可以配置libjpeg库了。

        如果自己不想修改,后边我会上传源码。

    2、配置libjpeg库参见下面这篇帖子

        http://www.cnblogs.com/pang1567/p/3677851.html

    3、配置完成后,即可编译

        make和make install

        生成了libjpeg.so.62.0.0,这就是我们交叉编译好的动态库。拷贝到测试工程目录下,假如我们测试文件为main.c

        执行如下命令 arm-linux-gcc main.c -o main -L./ -ljpeg -Wl,-rpath=./ 生成了可执行文件。

        转到开发板目录下,执行此可执行文件。这里要注意,需要把自己的动态库也拷贝到可执行目录下,或者拷贝到开发板/usr/lib目录下。即可执行。

    4、源码和动态库下载地址

        这里我测试的libjpeg库的版本为 6b 。

        代码下载地址:http://download.csdn.net/detail/pang1567/7241289

        很多内容都是学习网上大牛的帖子来的,自己完成了老板要求的任务,供大家参考学习,不足之处,请指正~

  • 相关阅读:
    HTML超文本标记语言(八)——表单<form>
    如何理解JavaScript中给变量赋值,是引用还是复制
    PostCSS 实战
    sass 工具库
    微信小程序-制作简易豆瓣笔记
    学习pano2vr制作html5全景笔记
    git命令笔记
    Gulp实战
    html5-离线存储
    html5
  • 原文地址:https://www.cnblogs.com/pang1567/p/3683601.html
Copyright © 2011-2022 走看看