Reconstruct 8X8 intra luma macroblock for high profile.
IppStatus ippiReconstructLumaIntra8x8MB_H264_16s8u_C1R(Ipp16s** ppSrcDstCoeff, Ipp8u* pSrcDstYPlane, Ipp32s srcDstYStep, IppIntra8x8PredMode_H264* pMBOIntraTypes, Ipp32u cbp8x8, Ipp32s QP, Ipp8u edgeType, const Ipp16s* pQuantTable, Ipp8u bypassFlag);
IppStatus ippiReconstructLumaIntra8x8_H264High_32s16u_IP1R(const IppiReconstructHighMB_32s16u* pReconstructInfo, IppIntra8x8PredMode_H264* pMBIntraTypes, Ipp32u edgeType);
ppSrcDstCoeff |
Pointer to the order of 8x8 blocks of residual coefficients for this macroblock, which are taken as a result of Huffman decoding (8x8 luma blocks, if the block is not zero-filled) in the same order as is shown in Figure 6‑11 of [ITUH264]. Pointer is updated by the function and points to the blocks for the next macroblock. |
pSrcDstYPlane |
Pointer to the current macroblock that is reconstructed in current Y-plane. |
srcDstStep |
Y-plane step. |
pMBIntraTypes |
Array of Intra_8x8 luma prediction modes for each subblock. pMBIntraTypes[i] is defined for subblocks (0 ≤ i < 4) as described in 8.3.2.1 of [ITUH264]. |
cbp8x8 |
Coded block pattern. If cbp8x8 & (1<<(1+i)) is not equal to 0 (0 ≤ i < 4), i-th 8x8 AC luma block is not zero-filled and it exists in ppSrcDstCoeff. |
QP |
Quantization parameter ( QPY in [ITUH264]). It must be within the range [0;51]. |
edgeType |
Flag that specifies the availability of the macroblocks used for prediction. If the upper macroblock is not available for 8x8 intra prediction, edgeType&IPPVC_TOP_EDGE must be non-zero. If the left macroblock is not available for 8x8 intra prediction, edgeType&IPPVC_LEFT_EDGE must be non-zero. If the upper-left macroblock is not available for 8x8 intra prediction, edgeType&IPPVC_TOP_LEFT_EDGE must be non-zero. If the upper-right macroblock is not available for 8x8 intra prediction, edgeType&IPPVC_TOP_RIGHT_EDGE must be non-zero. |
pQuantTable |
Pointer to the quantization table (LevelScale(qP%6, i, j) in [ITUH264]). |
bypassFlag |
Flag enabling lossless coding. |
pReconstructInfo |
Pointer to the IppiReconstructHighMB_32s16u structure. |
The functions ippiReconstructLumaIntra8x8MB_H264_16s8u_C1R and ippiReconstructLumaIntra8x8_H264High_32s16u_IP1R are declared in the ippvc.h file. These functions reconstruct 8x8 intra luma macroblock for high profile. The process for each 8x8 block in the same order as shown in Figure 6-11 of [ITUH264] is described below:
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error condition if at least one of the specified pointers is NULL. |
ippStsOutOfRangeErr |
QP is less than 0 or greater than 51. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.