Directly performs Huffman baseline decoding of an 8x8 block of the quantized DCT coefficients.
IppStatus ippiDecodeHuffman8x8_Direct_JPEG_1u16s_C1(const Ipp8u* pSrc, int* pSrcBitsLen, Ipp16s* pDst, Ipp16s* pLastDC, int* pMarker, Ipp32u* pPrefetchedBits, int* pNumValidPrefetchedBits, const IppiDecodeHuffmanSpec* pDcTable, const IppiDecodeHuffmanSpec* pAcTable);
pSrc |
Pointer to the source buffer with the JPEG bit stream. |
pSrcBitsLen |
Length in bits of the buffer for the bit stream. |
pDst |
Pointer to the 8x8 block of the quantized DCT coefficients. |
pLastDC |
Pointer to the DC coefficient of the previous 8x8 block of the same color component. |
pMarker |
Pointer to a variable that will receive JPEG marker detected during decoding. |
pPrefetchedBits |
Pointer to the prefetch buffer which contains the previously decoded bits. |
pNumValidPrefetchedBits |
Number of valid bits in the prefetch buffer. |
pDcTable |
Pointer to the Huffman table for the DC coefficients. |
pAcTable |
Pointer to the Huffman table for the AC coefficients. |
The function ippiDecodeHuffman8x8_Direct_JPEG is declared in the ippj.h file. This function directly decodes an 8x8 block of the quantized DCT coefficients using pDcTable and pAcTable tables. The function does not require any additional structure for operation. The decoding procedure conforms to [ISO10918], Annex F.2.2, Baseline Huffman Decoding Procedures. If a JPEG marker is detected during decoding, the function stops decoding and writes the marker to a location indicated by pMarker.
pLastDC should be set to 0 through the function initialization or after each restart interval. pMarker should be set to 0 through the function initialization or after the found marker has been processed. pNumValidPrefetchedBits should be set to 0 in the following cases: 1) through the function initialization; 2) after each restart interval; 3) after each found marker has been processed.
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error condition if one or all of the specified pointers are NULL. |
ippStsSizeErr |
Indicates an error condition if pSrcBitsLen or pNumValidPrefetchedBits has negative value. |
ippStsJPEGDCTRangeErr |
Indicates an error condition if the DCT coefficient is out of the allowed range (-1023..1023). |
ippStsJPEGOutOfBufErr |
Indicates an error condition if the buffer limits are exceeded. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.