- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am using the IPP legacy libraries specifically, ippdc. The reason for this is the data that I am working with has been compressed by these functions. Specifically Huffman Compressed JPEG data.
I have utilized the legacy libraries in IPP 9.0 and this has worked fine. However I would like to also implement none IPP code where speed is not as relevant.
The problem is I can't find any documentation on the process. While in theory I understand the basis of Huffman encoding, I don't see how to decoded the binary arrays I have of compressed JPEG data. I understand I need the Huffman decoding tree, and can see that generated purely from the compressed data with ippsHuffLenCodeTableUnpack_8u and the to decode the array in its entirety, I have been using ippsDecodeHuffInitAlloc_8u and ippsDecodeHuff_8u.
Could you share any info with regards to more details on extracting the huffman table from the compressed data? The data does not start with the typical header data it seems, as this is stored elsewhere. (image size (width,height, uncompressed_size) and passed to the relevant functions. Is it Canonical encoding of the table or some other means?
Any info is greatly appreciated.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Ben,
Thank you for posting.
For the removed functions, it's hard for us to find out the details information for 10 years ago product. Please refer to the IPP Doc: https://www.intel.com/content/www/us/en/docs/ipp/developer-guide-reference/2021-12/ipp-ref-removed-functions.html, or update your IPP product to newer version.
Regards,
Ruqiu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Ruqiu,
I appreciate the response. However, all relevant functions have been removed with the workaround listed as N/A. The closest I found was the information in https://community.intel.com/t5/Intel-Integrated-Performance/IPP-Huffman-encoding-decoding-functions-deprecated-substituation/m-p/1009148.
I have implemented the linked legacy 9.0 library successfully. All data I have, has been encoded through IPP huffman compression.
Is it possible to shed any light on the structure of the JPEG byte arrays for other manipulation? If there is any documentation available within what format the byte array takes? Any specific information would be greatly beneficial. Looking at the decompression section of https://en.wikipedia.org/wiki/Huffman_coding there are numerous ways the tree can be encoded for example.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Ben,
We understand that you are expecting the support for the legacy product, but the very old product didn't fix bugs or any potential secure risks, that's the reason that we are not recommend users to continue use the legacy product.
What we can do now is recommend users refer to two these articles below:
https://www.intel.com/content/www/us/en/developer/articles/tool/intel-ipp-legacy-libraries.html
For JPEG relate, might Intel Media SDK work for you.
https://github.com/Intel-Media-SDK/MediaSDK
Regards,
Ruqiu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for reaching us. This issue is closing and we will no longer respond to this thread. If you require additional assistance from Intel, please start a new thread.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page