Encodes, rearranges and puts intra block into bit stream.
IppStatus ippiPutIntraBlock(Ipp32u** ppBitStream, int* pOffset, Ipp16s* pSrcBlock, Ipp32s* pDCPred, IppVCHuffmanSpec_32u* pDCTable, IppVCHuffmanSpec_32s* pACTable, Ipp32s* pScanMatrix, Ipp32s EOBLen, Ipp32s EOBCode, Ipp32s count);
ppBitStream |
Double pointer to the current position in the bit stream. |
pOffset |
Pointer to the offset between the bit that ppBitStream points to and the start of the code. |
pSrcBlock |
Pointer to the block. |
pDCPred |
Pointer to the value to be added to the DC coefficient; this value is read from the special table imposed by standard. |
pDCTable |
Pointer to the table containing codes for DC coefficient, that is, the first coefficient among the DCT coefficients. |
pACTable |
Pointer to the table containing Run-Level codes for AC coefficients, that is, all DCT coefficients except the first coefficient. |
pScanMatrix |
Pointer to the scanning matrix. |
EOBLen |
Length of the block end code. |
EOBCode |
Value of the block end code. |
count |
Number of the non-zero AC coefficients. |
This function is declared in the ippvc.h header file. The function ippiPutIntraBlock is applied to intra blocks and encodes a block of 8x8 DCT coefficients.
The ippiPutIntraBlock function encodes DC coefficient using the value * pDCPred for value computation and pDCTable for its encoding. Then it encodes AC coefficients using the pACTable.
The pointer pScanMatrix points to the scanning matrix that is described in MPEG standard. See Figure "Default Scanning Sequence" for the simple scanning matrix and sequence. After encoding, the data should be rearranged from linear sequence to scanning sequence.
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error when at least one input pointer is NULL. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.