LEGACY Integration with the Intel JPEG Library (IJL) for Windows
which is :
Provides high-performance JPEG encoding and decoding of full color and grayscale still
images. This sample provides an easy-to-use programming interface without sacrificing
low-level JPEG control for advanced developers.
My Query is does Intel Provides the same
LEGACY Integration with the Intel JPEG Library (IJL) for Mac OS X
If not what is alternate legacy application is provided for MAc OS x
If you take a look at the samples description page (Free Code Samples) you'll find an application in the legacy samples called jpegview which is provided for the Mac OS X platform, as well as Linux and Windows.
In the non-legacy samples you'll find the UIC sample which includes several applications as well as the IJG sample, which is based on the Independent JPEG Group's JPEG library implementation. All of these samples are supported on the Mac OS X platform.
The JPEGView example can encode and decode JPEG images. It is an application rather than a library, like IJL, so I don't know how to answer your question. It provides the same basic functionality but it does it differently...
I suggest you download the samples and review them directly to determine if they are of value for your application needs.
Note that there is a UIC sample which is NOT part of the legacy samples and will continue to be supported in future versions of the IPP library. These legacy samples will be going away. Even the readme notes for JPEGView indicate that you should move to UIC.
The JPEGView overview from the readme included with the sample is reproduced below.
- - - - JPEGView Overview - - - -
Note:The basic features of this sample have been transferred toa new"Unified Image Codec (UIC) sample",please check UIC sample under directoryipp-samples\image-codecs\uic for more details. This sample will be removed in near future.
OverviewThis sample demonstrates how to use the Intel IPP functions to create a JPEG encoder/decoder. The sample contains JPEG encoder/decoder which resides in the jpegcodec folder and MFC application that allows opening, viewing and creating JPEG files. The JPEG encoder/decoder takes advantage of the Hyper-Threading Technology (HT Technology) found in the latest Intel Pentium 4 processors. The JPEG encoder/decoder is based on the international standard ISO/IEC 10918-1.
- SetSource(Ipp8u* pSrc, int srcStep, IppiSize srcSize, int srcChannels, JCOLOR srcColor, JSS srcSampling, int srcPrecision)
SetSource(Ipp16s* pSrc, int srcStep, IppiSize srcSize, int srcChannels, JCOLOR srcColor, JSS srcSampling, int srcPrecision)
Use these methods to set up source image to compress with IPP JPEG codec
Use this method to set up where to output resulting JPEG bitstream. You can use memory buffer or byte stream, see CStdFileOutput or CMemBuffOutput classes for example
- SetParams(JMODE mode, JCOLOR color, JSS sampling, int restart_interval, int huff_opt, int quality)
SetParams(JMODE mode, JCOLOR color, JSS sampling, int restart_interval, int huff_opt, int point_transform, int predictor)
Use these methods to set up encoder control parameters. Use the first method for JPEG_BASELINE and JPEG_PROGRESSIVE modes, use the second method for JPEG_LOSSLESS mode. See ./jpegcodec/jpegbase.h file for definitions of JMODE, JCOLOR, JSS
InitHuffmanTable(int tbl_id, HTBL_CLASS tbl_class, Ipp8u bits, Ipp8u vals)
This method allows you to replace default huffman table. Use it carefully, huffman table must match encoded data. Do not use this methods if you are not familiar with JPEG details.
AttachHuffmanTable(int tbl_id, int comp_no)
This method allows you to change default connection of huffman tables and JPEG color components. The IPP JPEG codec by default connects huffman table with id = 0 to the first component in scan and uses table with id = 1 for other components.
- InitQuantTable(int tbl_id, Ipp8u qnt, int quality)
InitQuantTable(int tbl_id, Ipp16u qnt, int quality)
These methods allow you to replace default quantization tables, for both 8-bit and 16-bit precision. Note, that you need to set quality parameter to zero to avoid re-scaling table's values.
AttachQuantTable(int tbl_id, int comp_no)
This method allow you to change default connection of quantization tables with JPEG color components.
Use this method to generate JPEG header, which include SOI, APP1, DQT, SOF, DHT segments. Separate calls of WriteHeader and WriteData methods allow you to write abbreviated JPEG files. Note, that DHT segment is not applied in WriteHeader for JPEG_PROGRESSIVE mode.
Use this method to actually encode the data
This method provides the size of generated JPEG bitstream after call of WriteData. It is useful when encoding to memory buffer is used.
decoder (see jpegcodec/jpegdec.h for details)
This method allows you to set up source for compressed JPEG bitstream. It is possible to use memory buffer or byte stream, see CStdFileInput or CMemBuffInput classes for example
- SetDestination(Ipp8u* pDst, int dstStep, IppiSize dstSize, int dstChannels, JCOLOR dstColor, JSS dstSampling, int dstPrecision)
SetDestination(Ipp16s* pDst, int dstStep, IppiSize dstSize, int dstChannels, JCOLOR dstColor, JSS dstSampling, int dstPrecision)
These methods specify output image properties
ReadHeader(int* width, int* height, int* nchannels, JCOLOR* color, JSS* sampling, int* precision)
Use this method to get basic JPEG image information. It reads JPEG bitstream up to SOS marker.
Use this method to do actual decompression of JPEG image into array of pixels
- Mode() return JPEG image compression scheme (JPEG_BASELINE, JPEG_EXTENDED, JPEG_PROGRESSIVE or JPEG_LOSSLESS)
- SetInColor(JCOLOR color) allows the application to specify color-space used in JPEG data when it is known from the application (like DICOM, TIFF, FlashPix super containers)
- Comment(Ipp8u** buf, int* size) returns internal memory buffer which contains embedded JPEG comments if any. Do not free that memory, codec will do it
- IsExifAPP1Detected() returns non zero if Exif APP1 marker is detected
- GetExifAPP1Data() returns pointer to Exif meta data segment. Do not free that memory, codec will do it
- GetExifAPP1DataSize() returns Exif APP1 meta data segment size