Mozilla JPEG处理软件-mozjpeg
2014-08-03 15:01:39 阿炯

mozjpeg是一个来自Mozilla实验室的JPEG图像编码器项目,目标是在不降低图像质量且兼容主流的解码器的情况下,提供产品级的JPEG格式编码器来提高压缩率以减小JPEG文件的大小。采用C语言开发(支持Java)并在BSD协议下授权。


'mozjpeg' is not intended to be a general JPEG library replacement. It makes tradeoffs that are intended to benefit Web use cases and focuses solely on improving encoding.

由于网站的图片使用数量和大小都在与日俱增,而HTML、JS和CSS文件大小都相对减小了。也就是说在页面加载的过程中,图片占用了大量的网络流量。所以减小图片的大小可以显著优化页面加载速度。当然使用压缩比更高的替代图像格式(比如WebP)也是一种解决方案,但是这些新的图片格式都存在兼容性的问题。在内部讨论研究后,Mozilla认为JPEG仍可以进一步压缩,于是他们就开始了mozjpeg项目。

由Google推出的新的图片格式WebP也值得关注,国内的淘宝在商品详情页中就有使用这种格式的图片,WebP图片格式旨在取代JPEG等现有图片格式,以加快图片加载速度。WebP图片压缩体积大约只有JPEG的1/3,对于采用大量图片的网页,WebP格式可以节省大量带宽。但是WebP的缺陷也很明显,只有彻底解决兼容问题,WebP才有可能被大范围使用。

CloudFlare对mozjpeg 2.0和libjpeg-turbo做了测试并对比了二者的性能,在随机选取的10000张JPEG图片中,无论是在可以压缩的图片数量还是压缩比例上,mozjpeg 2.0的性能都明显优于 libjpeg-turbo 1.3.1。

最新版本:3.0
该项目的目的是提供产品级的JPEG格式解码器来提高压缩率,请注意该版本对 mozjpeg ABI 做了很多改变。

项目主页:https://github.com/mozilla/mozjpeg
该文章最后由 阿炯 于 2015-01-04 16:04:44 更新,目前是第 2 版。