IJG libjpeg vs libjpeg-turbo

Jakub Bogusz qboosh at pld-linux.org
Fri Jan 18 17:41:29 CET 2013

On Fri, Jan 18, 2013 at 04:39:11PM +0100, Tomasz Pala wrote:
> On Fri, Jan 18, 2013 at 15:55:55 +0100, Jakub Bogusz wrote:
> > One solution could be to ship libjpeg-turbo as libjpeg.so.6 (or even
> > libjpeg.so.8, doesn't matter much) with development libjpeg.so symlink
> > (so by default we get SIMD-accelerated basic JPEG support) and ship
> > libjpeg 9 (as libjpeg.so.9) with different development symlink
> > (libjpeg9.so or maybe libjpeg-ijg.so).
> +1 (turbo as libjpeg.so.8)
> Assuming linked rationale is valid, libjpeg8c+ might be not widely required:
> "Most of the recent IJG changes (post 
> jpeg-8b) have been related to lossless JPEG encoding or SmartScale. 
> Best case, SmartScale is a new format that has not been adopted as a 
> standard yet and is not widely used, and worst case, it may be a mostly 
> useless extension.  The IJG's method for generating lossless JPEG files 
> using SmartScale is interesting, but I struggle to think of a reason why 
> one would want to use SmartScale for any other purpose"
> > Disadvantages:
> > - it needs identification of packages relying on libjpeg 7+
> >   functionality and patching them to link with -ljpeg9
> - why 7+?

Quoting original post:

"Anyhow, until/unless there is community
support behind SmartScale, it is unlikely that it will ever be adopted
in libjpeg-turbo (I don't have any need for it in my own work, so it
would pretty much have to be a funded development sort of deal.)  Thus,
the implementation of the libjpeg v7+ API and ABI would remain just
that:  an emulation and not a feature-complete implementation of jpeg-7
or jpeg-8."

> - are there any apps like this?

I'm not sure, it needs checking.

Also, I don't know if libjpeg-turbo supports compilation as 12-bit.
libtiff can use both 8- and 12-bit variants of libjpeg (both formats
can be embedded in TIFF).
Should we use 8-bit libjpeg-turbo and 12-bit IJG libjpeg?

Jakub Bogusz    http://qboosh.pl/

More information about the pld-devel-en mailing list