jpegtran如何与libjpeg-turbo,jpegoptim和mozjpeg相关?

时间:2016-03-18 20:16:40

标签: pillow libjpeg-turbo jpegoptim jpegtran mozjpeg

根据我的理解,jpegtran包含在libjpeg-turbo中,在使用optimize=True保存图像时使用。 Jpegoptim使用与jpegtran相同的算法,但要求图像在优化之前暂时保存到磁盘,并且jpegoptim具有额外的压缩能力。

看看Github上的mozjpeg repo,有很多对libjpeg-turbo的引用,它有更多的星星,所以我的问题是它们是如何相关的? mozjpeg是libjpeg-turbo的一个分支吗?即,是否可以禁用mozjpeg中的某些功能,最终获得与libjpeg-turbo相同的性能和结果?

1 个答案:

答案 0 :(得分:0)

是的,mozjpeg是libjpeg-turbo的一个分支。在mozjpeg v1.0中,他们确认了这一点。 实际上,它是三种技术(渐进式JPEG编码,jpgcrush和格子量化)的组合,以减小JPEG图像的大小。 libjpeg-turbo支持渐进式JPEG,但jpgcrush和trellis量化不支持。

mozjpeg的libjpeg API实现包括一个可扩展性框架,允许添加新功能而无需修改透明的libjpeg压缩/解压缩结构。

生成的JPEG文件mozjpeg需要更多的时间进行压缩而不是解压缩。使用默认设置时,mozjpeg是 在压缩图像时比libjpeg-turbo甚至libjpeg慢得多。因此,它通常不适合于实时压缩。它最好用作Web编码工作流程的一部分。

here了解更多信息。