使用libjpeg-turbo'的TurboJPEG的例子或教程
libjpeg-turbo的说明我找到了一些部分,例如 libjpeg-turbo的来源有充分的记录,因此确实有帮助. 解决方案 最后,我使用了在Internet上找到的随机代码的组合(例如 https://github.com/erlyvideo/jpeg/blob/master/c_src/jpeg.c )和.c and header Files for Libjeg-turbo(libjeg-turbo),这些文件已有很好的记录. 其他解决方案 好吧,我知道您确实已经解决了您的问题,但是正如某些人一样,就像我一样,可以搜索一些简单的例子,我将分享我的创建. 这是一个示例,正在压缩和解压缩RGB图像.否则,我认为 turbojpeg 的API文档非常容易理解! 压缩: #include const int JPEG_QUALITY = 75; const int COLOR_COMPONENTS = 3; int _width =
2 2024-04-06
编程技术问答社区
用libjpegturbo压缩一批图片时的奇怪结果
首先,我(想要)做什么: 压缩并缩小一批图片(JPG). 假设原始图片具有此1600W x 1200h尺寸. 现在,我想拥有一份1600x1200的压缩副本,另一个是800x600和400x300. 我使用的是: 我正在使用libjpegturob来实现这一目标.如果libjpegturob有一些问题,我会尝试使用给定方法的Android. 已经尝试过: 首先,我使用了汤姆·加尔(Tom Gall)移植的Java包装器(它运行得很好(在Nexus 4上),直到我开始使用超过4MB的图片. 基本上发生的是Android抛出了OutofMemory例外.这发生在我使用较小的图片(〜1-2MB)但接一个地压缩时发生. 在使用Nexus s这样的较低记忆的预算设备上运行此操作后,这甚至变得最糟糕. 我的想法是由低堆引起的问题. 那么,我想,我必须在c中这样做. 似乎解决了内存问题,只要我使用的是预算设备上的3MB较小的图片. 在Nexus 4上,我什至可以压缩> 15MB
4 2024-03-31
编程技术问答社区
安卓系统中libjpeg-turbo的集成或构建说明
可以在互联网上找到各种页面,以提及android的libjpeg-turbo( example ) .他们都指着存储库 解决方案 我不好,该文件位于该存储库中的分支中. 还找到了此信息: /p> 其他解决方案 我将libjpeg-turbo移植在数月前的Android中. 您可以在此处找到代码: android.txt在那里等.刚移出外部/JPEG目录,然后用它命名完全相同的外部/JPEG,它将构建并运行正常. 计划很快将其推入Asop. (我知道Cyanogenmod目前也正在考虑) 其他解决方案 使用makefile.am文件查看您需要编译的文件,然后在您自己的android.mk makefile中写入.
6 2024-02-17
编程技术问答社区
多少份额的安卓设备受益于Libjpeg-turbo优化?
libjpeg-turbo 项目"使用SIMD说明(MMX,SSE2,NEON)来加速基线JPEG压缩和减压X86,X86-64和ARM系统". 什么样的Android设备空间支持这些说明,因此使用此库将获得速度收益? (我将通过NDK访问的本机代码进行解压缩.) 解决方案 市场上绝大多数的Android设备都使用了ARM CPU的味道.高端手机(例如HTC感觉)倾向于使用支持霓虹灯的ARM CPU(Qualcomm Snapdragon,Omap4,Samsung Exynos,Tegra3).较旧/功能较低的手机通常具有一些ARMV6芯片组,例如高通MSM72XX系列.一些很好的例子是Google G1和原始的摩托罗拉机器人. Android平板电脑是一个略有不同的故事.现有的平板电脑设备的很大一部分是基于Nvidia Tegra2芯片组的,该芯片组不包括霓虹灯.基于Tegra3(Asus Transformer Prime)的较新平板电脑确实包括对霓虹灯的
2 2024-02-17
编程技术问答社区
libjpeg-turbo for android
我需要 libjpeg-turbo for android ndk.是否有人设法将其编译为.A(静态)lib? 我尝试过几次,但这只给了我很多错误. 解决方案 安装android ndk .按照 r8b 验证了以下说明,较旧版本可能会有问题,我不知道. 获取git clone git://git.linaro.org/people/tomgall/libjpeg-turbo/libjpeg-turbo.git -b linaro-android 在 libjpeg-turbo git 创建的目录中以下: ifeq ($(notdir $(MAKECMDGOALS)),libjpeg.a) LOCAL_SRC_FILES += $(libsimd_SOURCES_DIST) include $(BUILD_STATIC_LIBRARY) include $(CLEAR_VARS) LOCAL_MODULE := dummy endif 运行
6 2024-02-17
编程技术问答社区
Docker Alpine--启用GD JPEG支持
我遇到了一个问题,可以通过PHP-FPM的高山图像获得GD JPEG支持.我已经尝试了我能想到的每种组合来实现此功能.以下是我的Dockerfile的片段: FROM php:7.1-fpm-alpine RUN apk update \ && apk upgrade \ && apk add --no-cache \ freetype \ libpng \ libjpeg-turbo \ freetype-dev \ libpng-dev \ jpeg-dev \ libjpeg \ libjpeg-turbo-dev \ RUN docker-php-ext-configure gd \ --with-freetype-dir=/usr/lib/ \ --with-png-dir=/usr/lib/
12 2024-01-24
编程技术问答社区
如何检查libjpeg-turbo是在OpenCV中内置的?
我从github -D WITH_JPEG=ON和-D BUILD_JPEG=ON构建它.我可以在cmakecache.txt中检查一下.但是我找不到与libjpeg-turbo libjpeg-turbo的任何东西,在安装/include/install/lib. OPENCV内置了如何测试和验证libjpeg-turbo?而不是系统libjpeg. 解决方案 您的软件包中应该有一个二进制(可执行)称为opencv_version,您可以这样运行: opencv_version -v | grep -i jpeg 样本输出 JPEG: build-libjpeg-turbo (ver 1.5.3-62) JPEG 2000: build (ver 1.900.1) 同样,在Python中,您可以做: import cv2 print(cv2.getBuildInforma
44 2023-05-10
编程技术问答社区
如何用libjpeg | turbo编译OpenCV?
我在我的C ++项目之一中使用OPENCV 2.3.1.尽管我的项目效果很好,但它在很大程度上取决于JPEG解码和编码.我想通过使用libjpeg-turbo获得加速,但是我找不到与libjpeg-turbo链接的正确方法.根据我的黑客尝试以及我编辑的哪些文件,我要么最终出现编译错误,要么使用无用的OpenCV库(所有内容都正确地编译了,但是我无法打开或编写JPEG文件,尽管C ++项目中没有任何错误). 任何人都可以解释如何使用libjpeg-turbo编译openCV,以更快地解码/编码? 解决方案 用libjpeg-turbo构建OpenCV 2.4.0>您需要: 构建libjpeg-turbo作为静态库 使用以下命令配置OpenCV: cmake -DWITH_JPEG=ON -DBUILD_JPEG=OFF -DJPEG_INCLUDE_DIR=/path/to/libjepeg-turbo/include/ -DJPEG_LIBRARY=/path/t
62 2023-05-09
编程技术问答社区
如何释放由libjpeg创建的缓冲区?
我正在使用libjpeg将图像缓冲区从opencv垫子转换为存储器位置 这是代码: bool mat2jpeg(cv::Mat frame, unsigned char **outbuffer , long unsigned int *outlen) { unsigned char *outdata = frame.data; struct jpeg_compress_struct cinfo = { 0 }; struct jpeg_error_mgr jerr; JSAMPROW row_ptr[1]; int row_stride; *outbuffer = NULL; *outlen = 0; cinfo.err = jpeg_std_error(&jerr); jpeg_create_compress(&cinfo); jpeg_mem_dest(&cinfo, outb
58 2023-03-25
编程技术问答社区
在vs c++中链接libjpeg-turbo 2017
我的问题很简单..我无法在项目中链接libjpeg-turbo. 我想尝试这个景象但是我无法编译: 我不确定我在做什么错: 解决方案 您可以从github下载vcpkg,并在powershell提示中运行vcpkg.exe(以管理模式打开). VCPKG可以在VS 2017和VS 2015(SP3)IDE中安装许多开源项目(支持静态和动态库).您可以使用选择X86或X64平台,在某些情况下甚至允许选择工具集(例如\ vcpkg install install boost:x64-windows-v141).如果您使用"集成安装"作为VCPKG命令行,则所有库将自动与您的项目链接,并且项目.dll文件将自动复制到您的应用程序文件夹中. 因此,在您的情况下,在安装vcpkg.exe之后,您键入.\ vcpkg install install libjpeg-turbo:x64-windows静态和安装类型后.\ vcpkg Integrate intermant i
30 2023-02-27
编程技术问答社区
Android如何通过JNi实例使用libjpeg-turbo库
我成功地与NDK-build一起构建了libjpeg-turbo,这要归功于这篇文章: for android libjpeg-turbo 我想在libjpeg-turbo的示例中获取像read_jpeg_file这样的本机函数,以从Java代码调用以将其用于Android App. 有人可以给我一个例子吗?如何为使用libjpeg-turbo ndk构建库编写本机方法? 我可以通过 加载库 System.loadLibrary("libjpeg"); 但是下一步呢?该库没有任何本机方法可以从Java调用. 我试图根据JNI纪录片编写JNI C类,但没有成功. 示例代码可以学习如何做. 编辑: 我创建了一个测试类NativeMethods: package com.test.app; public class NativeMethods { private String filename = null; static
44 2023-01-07
编程技术问答社区
我如何在libjpeg | turbo中使用jpeg_mem_src, jpeg_mem_dest?
libjpeg8 包含这两个函数,但在 libjpeg-turbo 中具有以下功能: //jconfig.h #define JPEG_LIB_VERSION 62 ... //jpeglib.h #if JPEG_LIB_VERSION >= 80 /* Data source and destination managers: memory buffers. */ EXTERN(void) jpeg_mem_dest JPP((j_compress_ptr cinfo, unsigned char ** outbuffer, unsigned long * outsize)); EXTERN(void) jpeg_mem_src JPP((j_decompress_ptr cinfo, unsigned char * inbuffer,
6046 2022-07-19
编程技术问答社区