Reconstruct chroma macroblock intra-frame
SSE2
FwStatus | fwiReconstructChromaIntraMB_H264_16s8u_P2R | ( | Fw16s ** ppSrcCoeff, Fw8u * pSrcDstUPlane, Fw8u * pSrcDstVPlane, const Fw32u srcDstUVStep, const FwIntraChromaPredMode_H264 intraChromaMode, const Fw32u cbp4x4, const Fw32u ChromaQP, const Fw8u edgeType ); |
ChromaQP | Chroma quantizer, must be within the range [0;39]. | |
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 ppSrcCoeff. | |
edgeType | Specifies a vertical or horizontal edge. | |
intraChromaMode | Specifies the operating mode of the intrachroma prediction process. | |
pSrcDstUPlane | Pointer to a macroblock that is reconstructed in the current U plane. The macroblock must contain inter-prediction samples. | |
pSrcDstVPlane | Pointer to a macroblock that is reconstructed in the current V plane. The macroblock must contain inter-prediction samples. | |
ppSrcCoeff | Double pointer to the order of 4x4 blocks of residual coefficients for a macroblock, the results of Huffman decoding (2x2 DC U-block, 2x2 DC V-block, 4x4 AC U-blocks, 4x4 AC V-blocks if the block is not zero-filled). The pointer is updated by the function and points to the blocks for the next macroblock. | |
srcDstUVStep | Plane step size. |
This function steps through source U and V plane buffers and reconstructs intra-frame predicted 8X8 U and 8X8 V chroma macroblocks as follows.
Performs an integer inverse transformation and dequantizes 2X2 U and V DC coefficients in accordance with JVTG050 8.5.7.
Scales, performs an integer inverse transformation, and shifts 4X4 AC U blocks in accordance with JVTG050 8.5.8., in the order shown in JVTG050, Figure 8-7.
Shifts 4X4 AC V blocks in accordance with JVTG050 8.5.8., in the order shown in JVTG050, Figure 8-7.
Adds 8X8 intra-frame prediction blocks and 8X8 residual blocks in accordance with JVTG050, Figure 8-247.
Results are written back to the source plane buffers.