我正在使用 Android 6.0 进行一些开发。现在我想使用 libjpeg-turbo 以 native c++ 代码解码相机拍摄的 JPEG 图像(JPEG9 图像)。但是,libjpeg-turbo 只能支持 JPEG 8。因此 libjpeg-turbo 给出错误“错误的 jpeg 库版本”。任何人都知道如何解决这个问题?
事实上,现在我正在使用OpenCV 函数imdecode 来完成这项工作,但是速度太慢了。有人说 OpenCV 在 imdecode 和 imencode 中使用 libjpeg。是真的吗?
如果我不能使用 libjpeg-turbo,我还能使用什么来高效解码和编码 JPEG9 图像?
感谢任何帮助!
最佳答案
Libjpeg-turbo 故意不支持带有 libjpeg v9 fork 扩展的图像,因为它们是非标准的,并且不提供比来自 libjpeg 标准版本的图像更好的压缩:
https://libjpeg-turbo.org/About/Jpeg-9
所以答案是您无法解码它们。您可以做的最好的事情就是避免使用 libjpeg v9,或者如果必须,请务必禁用所有 SmartScale 扩展以生成 JPEG 兼容文件。
关于android - 如何使用 libjpeg-turbo 解码 JPEG9 图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40762933/