We used to build a "Custom DLL" with IPP IJL library for JPEG encoding. It's a VS2003 DLL 32bit project with IJL sources and IPP custom merged static librarieswith the custom CPU type dispatcher. It exports some of IPP image functions and two custom functions for JPEG enc/dec which are using IJL.
Now we want to switch to IPP 7.0 and to UIC library, in order to add JPEG-XR support. I add UIC sources to the project along with four new functions for UIC JPEG and JPEG-XR enc/dec. JPEG functions are working fine but JPEG-XR are failing with heap corruptions at the deleting ofCJPEGXREncoder object. All function calls prior to it, returns success.
Please, take a look at the attached file ofJPEG-XR encoding function, maybe you will see some problem with the code. I was testing it with an IPP BGRAbitmap as an image source(created with ippiMalloc_8u_AC4() and copied from the DIB).
Thanks for your interest to UIC JPEG-XR codec. Did you try to encode your image with UIC sample application (either uic_transcoder_con or picnic)? Is it fails as well? Is your current UIC application 32-bit or 64-bit? I'm asking because we have identified an issue in 64-bit UIC JPEG-XR codec, that will be fixed with IPP 7.0 beta update 3 which is coming soon. But our testing on 32-bit platforms did not show any issues with JPEG-XR.
If you can provide test project which reproduce the problem then it would much easier toinvestigate the problem.
We can not vouch for proper work of the codec if youuseinternal class. I recommend you to work with uic_jpegxr_enc.h and uic_jpegxr_enc.cpp interface.Example of usageyou can seein picnic's or transcoder'sapplication file jpegxr.cpp.