私はこの問題に関して2つのわずかに矛盾するブログ投稿を見つけました、ここに要約します:
混乱に加えて、これ Redditスレッド は、mozjpegがjpegcrushで使用されているのと同じアルゴリズムを使用し、jpegcrushがjpegtranのラッパーであることを示唆しています...私はそれらのRedditコメントが間違っていると推測することしかできません、誰かがそれを確認できますか?
MozJPEGライブラリは、jpegcrush
(最適化されたプログレッシブスキャン)に触発された1つのアルゴリズムを使用しますが、技術的には完全に新しい実装です。
MozJPEGライブラリは、人気のあるlibjpegのドロップイン代替品であるため、ほとんどすべてのJPEG関連ツールを「通常」および「MozJPEG」フレーバーでコンパイルできます。
「通常の」jpegtran
とMozJPEGバージョンのjpegtran
が存在します。これは同じプログラムですが、MozJPEGバージョンには異なるデフォルト設定があり、圧縮を改善するために追加の作業を実行します。
同様に、jpegoptim
は通常ストックlibjpegでビルドされますが、MozJPEGバージョンのlibjpegでビルドすることもできます(例: ImageOptim それを行います)。
MozJPEGを使用する方法は2つあります。
jpegtran
が行うことです。cjpeg
の機能であり、jpegoptim
のような他のツールをMozJPEGで実行することができます。どちらの動作モードも、Vanillaの最適化されていないlibjpegよりも低速です。ロスレス最適化は作業量が少なくなりますが、ゲインも小さくなります。
より正確な速度分析はここにあります: https://libjpeg-turbo.org/About/Mozjpeg
ここでの「遅い」は相対的なものであることに注意してください。絶対的には、1秒あたり数メガピクセルを圧縮するため、ほとんどのアプリケーションで十分な速度である可能性があります。