ReconstructLumaIntraMB_H264

Reconstruct luma macroblock intra-frame

Supported Technologies

SSE2

Synopsis

FwStatus   fwiReconstructLumaIntraMB_H264_16s8u_C1R ( Fw16s ** ppSrcCoeffFw8u * pSrcDstYPlaneFw32s srcDstYStepconst FwIntra4x4PredMode_H264 * pMBIntraTypesconst Fw32u cbp4x4const Fw32u QPconst Fw8u edgeType );

Parameters

QP   Quantizer scale factor read from the bitstream.
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.
pMBIntraTypes   Pointer to an array of Intra_4x4 luma prediction modes for eight subblocks. pMBIntraTypes[i] is defined in the same way as in PredictIntra_4x4_H264 function (0 < i < 8 ).
pSrcDstYPlane   Pointer to the current macroblock that is reconstructed in current Y-plane. This 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.
srcDstYStep   Y-plane step size.

Description

This functions steps through a source Y plane buffer and reconstructs intra-frame predicted 4X4 luma macroblocks as follows.

Scales, performs an integer inverse transformation, and shifts each 4X4 block in accordance with JVTG050 8.5.8., in the order shown in JVTG050, Figure 6-6.

Performs intra-frame prediction for each 4X4 block in accordance with JVTG050 8.3.1.2.

Adds 4X4 inter-frame prediction blocks and 4X4 residual blocks in accordance with JVTG050, Figure 8-247.

Results are written back to the source plane buffers.