Reconstruct luma macroblock intra-frame
SSE2
FwStatus | fwiReconstructLumaIntraMB_H264_16s8u_C1R | ( | Fw16s ** ppSrcCoeff, Fw8u * pSrcDstYPlane, Fw32s srcDstYStep, const FwIntra4x4PredMode_H264 * pMBIntraTypes, const Fw32u cbp4x4, const Fw32u QP, const Fw8u edgeType ); |
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. |
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.