首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏10km的专栏

    mingw(gcc)编译libjpeg-turbo

    最近的工作需要读写jpeg图像,网上找了半天,发现libjpeg-turbo是个不错的选择。 libjpeg-turbo是与libjpeg接口兼容的一个jpeg编/解码库,其主要的特点就是利用SIMD指令(如X86架构的MMX/SSE/SSE2,ARM架构的NEON)来加速jpeg图像的编/解码 On such systems, libjpeg-turbo is generally 2-4x as fast as libjpeg, all else being equal. In many cases, the performance of libjpeg-turbo rivals that of proprietary high-speed JPEG codecs. /1.4.2/libjpeg-turbo-1.4.2.tar.gz,下面讲述如何在Windows下用gcc对libjpeg-turbo源进行编译。

    1.5K20编辑于 2022-05-07
  • 来自专栏韩曙亮的移动开发专栏

    【Android 内存优化】libjpeg-turbo 函数库交叉编译 ( libjpeg-turbo 函数库下载 | libjpeg-turbo 编译文档 | 环境准备 | NASM 安装 )

    一、 libjpeg-turbo 函数库下载与解压 在上一篇博客 【Android 内存优化】Android 原生 API 图片压缩原理 ( 哈夫曼编码开关 | 哈夫曼编码原理 | libjpeg-turbo 函数库 ) 对哈夫曼编码进行了介绍 , 如果需要在所有的 Android 手机上使用哈夫曼编码压缩图片, 那就需要使用 libjpeg-turbo 函数库 , 从 libjpeg-turbo/libjpeg-turbo root/ 目录下创建 picture_compress 目录 , 将源码拷贝到该目录下 ; 解压源码 : 执行 tar xvf libjpeg-turbo-2.0.5.tar.gz 命令 , 解压 libjpeg-turbo 函数库源码 ; $ tar xvf libjpeg-turbo-2.0.5.tar.gz 二、 libjpeg-turbo 编译文档 编译文档 : 查看 libjpeg-turbo 函数库的 ReadMe picture_compress/libjpeg-turbo-xxx 目录 , 执行 autoreconf -fiv 命令 ; $ autoreconf -fiv 五、 编译 Android 平台使用的 libjpeg-turbo

    2.5K20编辑于 2023-03-27
  • 来自专栏一棹烟波

    libJPEG-turbo库使用示例代码

    libJPEG库是用于编码数据为JPEG格式或者解码JPEG格式图片的常用库,OpenCV读取图像底层实现就是利用libJPEG库,而libJPEG-turbo则效率更高。

    3.4K80发布于 2018-01-12
  • 来自专栏醉梦轩

    编译Android版本的libjpeg-turbo

    0x00 前言 libjpeg-turbo是一个JPEG编解码库,支持x86, x86-64, ARM等系统下的指令加速,其性能号称是libjpeg的2-6倍。 github地址是:https://github.com/libjpeg-turbo/libjpeg-turbo。 官网的源码包下载地址为:https://sourceforge.net/projects/libjpeg-turbo/files/。我下的是1.5.3版本源码包。

    2.6K20发布于 2018-07-06
  • 来自专栏10km的专栏

    libjpeg-turbo 命令行编译脚本(MinGWMSVClinux)

    https://blog.csdn.net/10km/article/details/80095817 libjpeg-turbo用CMAKE命令行编译还是很方便的 编译libjpeg-turbo -DCMAKE_C_FLAGS=-m64 \ -DCMAKE_INSTALL_PREFIX=%安装路径% \ .. # 编译并安装到指定的路径 make install -j8 编译libjpeg-turbo dependencies/build_jpeg_turbo_msvc.bat 该脚本可以一次性自动编译生成32/64位以及/MT /MD的所有4版本(RELEASE) 这个目录下可以找到已经编译好的libjpeg-turbo Linux linux下编译libjpeg-turbo的脚本: https://gitee.com/l0km/jpegwrapper/blob/master/dependencies/build_jpeg_turbo.sh

    1.9K20发布于 2019-05-25
  • 来自专栏进击的多媒体开发

    图像库 libjpeg-turbo 编译与实践

    今天的主题就是 libjpeg-turbo 。 它的官网地址如下: https://libjpeg-turbo.org/ 它的 github 地址如下: https://github.com/libjpeg-turbo/libjpeg-turbo 编译 以上两种方式都可以实现 libjpeg-turbo 的编译,看个人喜好了。 而 libjpeg-turbo 的压缩速度会比 Android 原生的速度更快了。 libjpeg-turbo 的使用逻辑和 libpng 有点类似,首先都是要设置一个错误返回点,并且有一个结构体来存储信息。

    3.7K20发布于 2019-07-24
  • 来自专栏10km的专栏

    cmake:用于查找libjpeg-turbo的module FindTurboJPEG.cmake

    https://blog.csdn.net/10km/article/details/80086646 libjpeg-turbo的安装包没有提供用于CONFIG模式查找包(find_package )的cmake脚本,如果cmake脚本中要查找libjpeg-turbo库,就得自己写脚本。 于是我参照cmake 查找标准libjpeg库 的Module FindJPEG源码的写法实现了libjpeg-turbo的Module FindTurboJPEG.cmake。 为了更方便引用libjpeg-turbo,module中不仅提供了传统的变量方式TURBOJPEG_INCLUDE_DIR,TURBOJPEG_LIBRARY提供libjpeg-turbo的信息,还提供 import target:turbojpep,turbojpeg-static # 通过查找turbojpeg.h定位libjpeg-turbo的include文件夹位置 find_path(TURBOJPEG_INCLUDE_DIR

    1.6K10发布于 2019-05-25
  • 来自专栏韩曙亮的移动开发专栏

    【Android 内存优化】Android 原生 API 图片压缩原理 ( 哈夫曼编码开关 | 哈夫曼编码原理 | libjpeg-turbo 函数库 )

    文章目录 一、 哈夫曼编码开关 二、 哈夫曼编码原理 三、 libjpeg-turbo 函数库 四、 libjpeg-turbo 函数库下载 【Android 内存优化】图片文件压缩 ( Android 打开哈夫曼编码 : 将 jpeg_compress_struct 结构体的 optimize_coding 成员设置成 TRUE ; 作用是 通知 libjpeg-turbo 为图像计算最佳的哈夫曼编码表 jpeg_compress_struct cinfo; // ... // 打开哈夫曼编码 // 通知 libjpeg-turbo 为图像计算最佳的哈夫曼编码表 函数库下载 ---- 1. libjpeg-turbo 相关资源链接 : ① libjpeg-turbo 官方网站 : https://libjpeg-turbo.org/ ② GitHub 地址 : libjpeg-turbo/libjpeg-turbolibjpeg-turbo 文档 : 文档地址 2.

    1K10编辑于 2023-03-27
  • 来自专栏10km的专栏

    VS2015下解决:error LNK2019: 无法解析的外部符号 __iob_func

    在使用VS2015下使用libjpeg-turbo静态库,编译时报错了: error LNK2019: 无法解析的外部符号 __iob_func,该符号在函数 output_message 中被引用 虽然与我的情况不同,但是原理是一样的,我遇到的这个问题的原因是VS2015下使用VS2010编译的静态库,因为我用的libjpeg-turbo静态库是从官网下载编译好的版本(应该是vs2010这样的版本编译的 为vs2010编译时,vs2015下静态链接libjpeg-turbo会链接出错:找不到__iob_func, * 增加__iob_func到__acrt_iob_func的转换函数解决此问题, * 当libjpeg-turbo用vs2015编译时,不需要此补丁文件 */ #if _MSC_VER>=1900 #include "stdio.h" _ACRTIMP_ALT FILE* __cdecl 其实吧,因为我用的libjpeg-turbo静态库是从官网下载编译好的版本(应该是vs2010这样的版本编译的),所以才有这个问题,如果自己重新把libjpeg-turbo的源码在vs2015下重新编译

    2.8K40编辑于 2022-05-07
  • 来自专栏代码编写世界

    CMake构建学习笔记4-libjpeg库的构建

    据说在同样的硬件环境下,libjpeg-turbo的速度通常是libjpeg的2到6倍。 libjpeg-turbo对于v7,v8只是做到了部分兼容,但是其实libjpeg目前已经发展到v9了。 笔者个人认为libjpeg和libjpeg-turbo是C语言实现的,接口比较稳定,这个兼容性还是可以保证的。 构建libjpeg-turbo的关键指令如下所示: # 配置CMake cmake .. 不过有一点需要提示一下,libjpeg-turbo编译用到了汇编语言,因此需要指定一个汇编语言编译器NASM,只要是安装在默认目录就能够自动识别: 当然,不需要NASM也能构建成功,不过libjpeg-turbo

    38500编辑于 2024-12-14
  • 来自专栏10km的专栏

    nmake(vs2015)命令行编译libjpeg-turbo(x86amd64)

    https://blog.csdn.net/10km/article/details/51732883 很久之前写过一篇博客《mingw(gcc)编译libjpeg-turbo》,介绍了 windows下用mingw编译libjpeg-turbo的过程。 关于编译环境要求,除了vs2015之外,其他需要安装的软件参见《mingw(gcc)编译libjpeg-turbo》 生成命令行编译环境 如下图打开”VS2015开发人员命令提示” ? c:/libjpeg-turbo64/bin/djpeg.exe -- Installing: c:/libjpeg-turbo64/bin/jpegtran.exe 编译好的版本默认是安装到c:/libjpeg-turbo

    2.5K21发布于 2019-05-25
  • 来自专栏韩曙亮的移动开发专栏

    【Android 内存优化】libjpeg-turbo 函数库交叉编译与使用 ( 交叉编译脚本编写 | 函数库头文件拷贝 | 构建脚本配置 | Android Studio 测试函数库 )

    文章目录 一、交叉编译 Shell 脚本参考 二、NDK r16b 版本配置 三、libjpeg-turbo 交叉编译 Shell 脚本 四、执行 libjpeg-turbo 交叉编译 Shell 脚本 Android Studio 六、Android Studio 工程配置 CMakeLists.txt 构建脚本 七、Android Studio 工程配置 build.gradle 构建脚本 八、测试 libjpeg-turbo RTMP】Android Studio 集成 x264 开源库 ( Ubuntu 交叉编译 | Android Studio 导入函数库 ) 二、 x264 交叉编译 参考上述交叉编译脚本 , 编写 libjpeg-turbo 函数库 的交叉编译脚本 ; ( 上述编译脚本仅做参考 ) 发现 libjpeg-turbo 源码路径下的 BUILDING.md 文件中有预置好的交叉编译脚本示例 ; 二、NDK r16b 版本配置 ---- NDK 配置 : 交叉编译 libjpeg-turbo 只能使用 NDK r16b 或者之前的版本 , 这里使用 r16b 版本 ; ① NDK 官方主页 : 点击该链接进入界面 ② NDK

    2.4K20编辑于 2023-03-27
  • 来自专栏开发者技术前线

    支付宝 Android 版使用的开源组件

    https://github.com/facebook/yoga aspectj 一个面向切面的框架,它扩展了Java语言. https://github.com/eclipse/org.aspectj libjpeg-turbo libjpeg-turbo 是一个专门为 x86 和 x86-64 处理器优化的高速 libjpeg 的改进版本。 https://github.com/libjpeg-turbo/libjpeg-turbo END

    84020发布于 2020-11-23
  • 来自专栏TBOOX开源工程

    Xmake v2.7.2 发布,更加智能化构建第三方库

    首先是下载对应源码包 $ wget https://jaist.dl.sourceforge.net/project/libjpeg-turbo/2.1.4/libjpeg-turbo-2.1.4.tar.gz ruki-2:libjpeg-turbo-2.1.4 ruki$ xmake note: libjpeg-turbo 2.1.4 in xmake-repo found, try building it /2.1.4/646b795702e34be89c5745333d052aa2/share) -- CMAKE_INSTALL_DOCDIR = share/doc/libjpeg-turbo (/Users /ruki/.xmake/packages/l/libjpeg-turbo/2.1.4/646b795702e34be89c5745333d052aa2/share/doc/libjpeg-turbo) $ xmake note: libjpeg-turbo 2.1.4 in xmake-repo found, try building it or you can run `xmake f --trybuild

    1.3K20编辑于 2022-11-14
  • 来自专栏阿利民

    「Skia学习笔记」一、使用CMake交叉编译Skia

    除了Skia的本体,官方还提供了一个python脚本来下载全部第三方的依赖,比如libjpeg-turbo、libpng等,建议提前安装好python。 查看报错位置,jsimd_neon.S是libjpeg-turbo源码跟neon指令相关的代码,用于使用arm扩展指令集进行加速。 这类源码通常和CPU架构强相关,比如在libjpeg-turbo/simd目录下会同时有arm和arm64两个目录,分别对应arm的32位和64位架构。    /libjpeg-turbo/simd/arm64/jsimd_neon.S。 libjpeg-turbo官方是使用CMake编译的,我们可以参考libjpeg-turbo的CMake脚本对CPU架构的处理方法,在CMakeLists.txt前部加入以下代码,同时修改CMakeLists.ext

    6.5K21编辑于 2022-05-16
  • 来自专栏韩曙亮的移动开发专栏

    【Android 内存优化】Android 工程中使用 libjpeg-turbo 压缩图片 ( JNI 传递 Bitmap | 获取位图信息 | 获取图像数据 | 图像数据过滤 | 释放资源 )

    bitmap 中的图像数据 四、过滤 bitmap 中的图像数据 ( 获取 RGB 数据 剔除 A 通道数据 ) 五、释放资源 六、Bitmap 图像数据处理 在上一篇博客 【Android 内存优化】libjpeg-turbo 函数库交叉编译与使用 ( 交叉编译脚本编写 | 函数库头文件拷贝 | 构建脚本配置 | Android Studio 测试函数库 ) 中 对 libjpeg-turbo 函数库进行了交叉编译 , 拷贝了相应的头文件和静态库到 对象 , 需要将其转为 JNI 中的 bitmap 对象 ; ② 数据提取 : 从 bitmap 图像中提取 RGB 像素值 , 也就是剔除 ALPHA 通道 ( 透明度 ) 的数据 ; ③ 使用 libjpeg-turbo 压缩图片 : 调用 libjpeg-turbo 函数库 , 对上述提取的图片 RGB 像素数据进行压缩 ; ④ 释放资源 : 图片压缩完毕后 , 释放相关资源 ; 二、Java 层 Bitmap 对象转为 ReleaseStringUTFChars(path, filePath); 六、Bitmap 图像数据处理 ---- GitHub 项目地址 : han1202012/PictureCompression libjpeg-turbo

    1.7K20编辑于 2023-03-27
  • 来自专栏CreateAMind

    universe-starter-agent

    opens up a tmux session with multiple windows) htop (shown in one of the tmux windows) gym gym[atari] libjpeg-turbo (brew install libjpeg-turbo) universe opencv-python numpy scipy Getting Started conda create --name universe-starter-agent python=3.5 source activate universe-starter-agent brew install tmux htop cmake golang libjpeg-turbo

    86840发布于 2018-07-24
  • 来自专栏数据科学(冷冻工厂)

    使用自定义 PyTorch 运算符优化深度学习数据输入管道

    自定义 JPEG 图像解码和裁剪函数 libjpeg-turbo 库是一个 JPEG 图像编解码器,与 libjpeg 相比,它包含许多增强和优化。 特别是,libjpeg-turbo 包含许多函数,使我们能够仅解码图像中的预定义裁剪,例如 jpeg_skip_scanlines 和 jpeg_crop_scanline。 如果您在 conda 环境中运行,可以使用以下命令进行安装: conda install -c conda-forge libjpeg-turbo 请注意,libjpeg-turbo 已预安装在我们将在下面的实验中使用的官方

    43210编辑于 2023-10-25
  • 来自专栏构建FFmpeg Android播放器

    Android 利用V4L2 预览MJPEG格式 USB camera

    cameraDataCallback = new CameraDataCallback(); adCamera.startPreview(cameraDataCallback); libjpeg库的编译移植与使用 这里使用AS编译libJPEG-turbo 源码 新建Android工程libjpeg,并将libjpeg-turbo源码全部拷贝到src/main/cpp目录下 libjpeg.png 修改Android工程的 build.gradle,配置libjpeg-turbo的CmakeLists.txt defaultConfig { applicationId "com.test.libjpeg"

    2.4K20编辑于 2022-03-24
  • 来自专栏养码场

    一个支付宝竟使用了30多个开源软件

    (项目地址:https://github.com/eclipse/org.aspectj) 36、libjpeg-turbo libjpeg-turbo 是一个专门为 x86 和 x86-64 处理器优化的高速 (项目地址:https://github.com/libjpeg-turbo/libjpeg-turbo) 顺便附上iOS版本的支付宝使用的开源软件信息:

    97030发布于 2018-08-10
领券