Reconstruct 4X4 intra luma macroblock for high profile.
IppStatus ippiReconstructLumaIntra4x4MB_H264_16s8u_C1R(Ipp16s** ppSrcDstCoeff, Ipp8u* pSrcDstYPlane, Ipp32s srcDstYStep, IppIntra4x4PredMode_H264* pMBIntraTypes, Ipp32u cbp4x4, Ipp32s QP, Ipp8u edgeType, const Ipp16s* pQuantTable, Ipp8u bypassFlag);
IppStatus ippiReconstructLumaIntra4x4_H264High_32s16u_IP1R(const IppiReconstructHighMB_32s16u* pReconstructInfo, const IppIntra4x4PredMode_H264* pMBIntraTypes, Ipp32s edgeType);
ppSrcDstCoeff |
Pointer to the order of 4x4 blocks of residual coefficients for this macroblock, which are taken as a result of Huffman decoding (4x4 luma blocks, if the block is not zero-filled) in the same order as is shown in Figure 6‑10 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. |
srcDstYStep |
Y-plane step. |
pMBIntraTypes |
Array of Intra_4x4 luma prediction modes for each subblock. pMBIntraTypes[ i] is defined in the same way as in PredictIntra_4x4_H264 function (0 ≤ i < 16). |
cbp4x4 |
Coded block pattern. If cbp4x4 & (1<<(1+i)) is not equal to 0 (0 ≤ i < 16), i-th 4x4 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 4x4 intra prediction, edgeType&IPPVC_TOP_EDGE must be non-zero. If the left macroblock is not available for 4x4 intra prediction, edgeType&IPPVC_LEFT_EDGE must be non-zero. If the upper-left macroblock is not available for 4x4 intra prediction, edgeType&IPPVC_TOP_LEFT_EDGE must be non-zero. If the upper-right macroblock is not available for 4x4 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 ippiReconstructLumaIntra4x4MB_H264_16s8u_C1R and ippiReconstructLumaIntra4x4_H264High_32s16u_IP1R are declared in the ippvc.h file. These functions reconstruct inter luma macroblock for high profile. The process for each 4x4 block in the same order as is shown in Figure 6-10 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.