Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
The Intel sign-in experience has changed to support enhanced security controls. If you sign in, click here for more information.
6670 Discussions

To what extent is IPP 7.0.6 compatible with IJG jpeglib 8b or 8c?

I am developing an application that originally links to the static library ofIJG jpeg8b. My compiler is VS2008. The application is for both 32-bit and 64-bit, on Windows.
I have now purchased IPP 7.0.6. I have downloaded the ipp-samples and tested with the ijg test project, which can be compiled with jpeg6b and ipp 7.x.
My question is, to what extent is the sample project compatible with the newer versions of IJG jpeglib? I have jpeg8b and jpeg8c in mind.
I don't mind going into technical details - for example, I'm aware of that since IJG jpeg7 the file "jidctint.c" (integer inverse DCT) has added support for decoding into odd-sized blocks (anywhere from 2x2, 3x3, ... 15x15), which I know I don't need. However, to be sure that my application will not fail unexpectedly, I take care to disable such functionalities in my application, so that it will not try to call into unimplemented functions.
Is there such a list of compatibility between IPP 7.0.x and IJP jpeg 8 (8b/8c) ?
0 Kudos
3 Replies
Hi Ryan,
Of course, IPP is compatible with IJG 8b/8c. But, compatible to approximation of implementation. How are you planning to use IJG 8x? In the source code form moving all IPP-related patches from IJG 6.x to 8.x?
P.S. Locally there is an implementation of IJG 8.0b with IPP support, but not yet released as IPP sample.

Thank you for your reply. Your IJG 8.0b IPP sample is exactly what we need.

We use IJG together with LibTIFF, both in source code form, in order to providedecoding and encoding forTIFF_JPEG. The IJG we are currently linking is version 8a, unmodified. The LibTIFF we are linking is version 3.9.5, with modifications and bugfixes. These bugfixes affect the header validation at the beginning of the TIFF_JPEG stream, but do not affect the core computation of JPEG decoding.

Along a similar line, we are also looking for a tighter and more complete integration of IPP with LibTIFF. The TIFF decoder that was included with IPP sample only supports uncompressed mode, which is not relevant to us at all. The major compression modes we require are: TIFF_JPEG, TIFF_ZIP, TIFF_LZW, TIFF_GROUP4.

you wrote thatthere is an implementation of IJG 8.0b with IPP support locally. Where can I find it?
I have downloaded the evaluation version of Intel IPP (newest version) and would like to evaluate how much performance benefit it gives me, while using the IJG 8d version of libjpeg. However, the downloadable sample files "ipp_samples\image_codecs\ijg" use the old libjpeg version 6. Do I have to modify and extend the old libjpeg library on my own or do you provide the IPP adapted new version of ijg library?