jpegoptim is a utility for optimizing JPEG files. It provides lossless optimization (based on optimizing the Huffman tables) and "lossy" optimization based on setting a maximum quality factor.
Tags | multimedia Graphics Graphics Conversion |
---|---|
Licenses | GPL |
Operating Systems | POSIX IRIX Linux Solaris Darwin Mac OS X Windows (Cygwin/MinGW) |
Release Notes: This release fix the --stdin option (assume -f when reading from stdin) and other minor issues.
Release Notes: Memory is now used instead of temporary files during optimization. Support for reading input from stdin (and sending output to stdout) was added. There were other minor enhancements and fixes.
Release Notes: Many minor fixes and enhancements, including XMP marker support.
Release Notes: Support for progressive JPEGs has been added (fixes a long standing "bug" of progressive JPEGs becoming non-progressive during optimization). New options --all-normal and --all-progressive for converting JPEGs to non-progressive and progressive. A new -S / --size option to set the target size for the output file.
Release Notes: Safer temp file handling (if mkstemps() is available, and a patch to make "quiet mode" (-q) be quiet.
Hi Timo Kokkonen,
I'd like to suggest a new option to jpegoptim: the adaptive (dynamic) Huffman coding.
After reading this paper:
http://www.csd.uoc.gr/~hy438/themata/04-0522.pdf
it turns out that the usual custom Huffman table (also called optimized JPEG) yields on average a reduction of 1.38% of image's size, but the use of dynamic Huffman coding (which builds an even better Huffman table) almost doubles this figure by yielding on average a further reduction of 1.01%.
An implementation of Vitter's algorithm (an improved version of the algorithm mentioned in the previous paper and which yields even better reductions) is released in the public domain and can be found here :
http://code.google.com/p/compression-code/downloads/list
Given all this, would it be possible to add this new option to jpegoptim to optimize baseline and progressive JPEGs?