繁体   English   中英

jpegoptim vs jpegtran vs mozjpeg

[英]jpegoptim vs jpegtran vs mozjpeg

我发现有关此事的两篇博客文章有些矛盾,在此我进行总结:

更令人困惑的是,这个Reddit线程暗示mozjpeg使用jpegcrush中使用的相同算法,而jpegcrush是jpegtran的包装器...所以我们来了整整一圈? 我只能假设这些Reddit评论是错误的,有人可以确认吗?

MozJPEG库使用的灵感来自于一个算法jpegcrush (优化渐进扫描),但在技术上它是一个完全新的实现。

MozJPEG库是流行的libjpeg的直接替代,因此几乎所有与JPEG相关的工具都可以“常规”和“ MozJPEG”两种风格进行编译。

存在一个“常规” jpegtran和一个MozJPEG版本的jpegtran 这是同一程序,但是MozJPEG版本具有不同的默认设置,并执行额外的工作以更好地压缩。

同样, jpegoptim通常是用库libjpeg构建的,但是也可以用MozJPEG的libjpeg版本构建(例如ImageOptim可以)。


有两种使用MozJPEG的方法:

  1. 无损的(获取现有的JPEG文件并使其更小)。 这就是MozJPEG的jpegtran所做的。
  2. 有损(使用更高的质量/文件大小比率,从未压缩的像素创建新的JPEG文件)。 这就是MozJPEG的cjpeg所做的,其他工具如jpegoptim可以与MozJPEG一起使用。

两种操作模式都比普通的非优化libjpeg慢。 无损优化工作量较少,但增益也较小。

更精确的速度分析在这里: https//libjpeg-turbo.org/About/Mozjpeg

注意这里的“慢”是相对的。 绝对而言,它每秒压缩几百万像素,因此对于大多数应用而言可能足够快。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM