jpeg library

The ubiquitous JPEG looks like it will be getting a major feature boost in the not too distant future. The Independent JPEG Group at the Leipzig Institute for Applied Informatics has released version 9.1 of libjpeg, which brings not only 12-bit color to the format, but also the promise of lossless compression, and native HDR support.

Announced via a German press release, libjpeg 9.1 adds support for larger color gamut and more color depth thanks to the addition of 12-bit color support. As well as:

The new codec is available to download from the infAI site, with the new version officially adding:

  • Add support for wide gamut color spaces (JFIF version 2). Improve clarity and accuracy in color conversion modules. Note: Requires rebuild of test images.
  • Extend the bit depth support to all values from 8 to 12 (BITS_IN_JSAMPLE configuration option in jmorecfg.h). jpegtran now supports N bits sample data precision with all N from 8 to 12 in a single instance. Thank to Roland Fassauer for inspiration.
  • Try to resolve issues with new boolean type definition. Thank also to v4hn for suggestion.
  • Enable option to use default Huffman tables for lossless compression (for hardware solution), and in this case improve lossless RGB compression with reversible color transform. Thank to Benny Alexandar for hint.
  • Extend the entropy decoding structure, so that extraneous bytes between compressed scan data and following marker can be reported correctly. Thank to Nigel Tao for hint.
  • Add jpegtran -wipe option and extension for -crop.

While it will doubtless take some time for these new features to disseminate widely, this could potentially have large implications for the use of JPEG for lossless compression. The world of Raw is still something of a wilderness, with many camera manufacturers relying on their own standards rather than choosing a common one—which also means that apps need to be constantly updated to handle Raw information from new cameras. If lossless JPEG became a standard option, it would massively simplify the use of high-quality, lossless images from application to application.

[via the Phoblographer]