MC16x16B

Performs motion compensation for bi-predicted block.

Syntax

IppStatus ippiMC16x16B_8u_C1(const Ipp8u* pSrcRefF, Ipp32s srcStepF, Ipp32s mcTypeF, const Ipp8u* pSrcRefB, Ipp32s srcStepB, Ipp32s mcTypeB, const Ipp16s* pSrcYData, Ipp32s srcYDataStep, Ipp8u* pDst, Ipp32s dstStep, Ipp32s roundControl);

Parameters

pSrcRefF

Pointer to the forward reference block.

srcStepF

Size of the row in bytes, specifying the aligned forward reference frame width.

mcTypeF

Forward MC type IPPVC_MC_APX.

pSrcRefB

Pointer to the backward reference block.

srcStepB

Size of the ow in bytes, specifying the aligned backward reference frame width.

mcTypeB

Backward MC type IPPVC_MC_APX.

pSrcYData

Pointer to the data obtained after inverse DCT.

srcYDataStep

Number of bytes, specifying the width of the aligned data obtained after inverse DCT.

pDst

Pointer to the destination predicted block.

dstStep

Size of the row in bytes, specifying the aligned destination frame width.

roundControl

Parameter that determines type of rounding for half a pel approximation; may be 0 or 1.

Description

This function is declared in the ippvc.h header file. The function ippiMC16x16B_8u_C1 calculates sum of 16x16 residual block and 16x16 predicted block, which is calculated as average of two 16x16 predictions (F-prediction and B-prediction) (See Figure Motion Compensation Scheme for Bi-Predicted Block). Each prediction is calculated on the basis of the corresponding reference block and corresponding mcType (see IPPVC_MC_APX).

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error when at least one input pointer is NULL.


Submit feedback on this help topic

Copyright © 2000 - 2010, Intel Corporation. All rights reserved.