General Functions

These functions are universal and can be used in different codecs. This category includes functions of the following types:

residual block - difference between the source block and the predicted block some characteristics of the residual block some characteristics of the source block. These characteristics can be used for comparison of the blocks.

See the table below for the complete list of Video Coding general functions.

General Functions 

Function Short Name

Description

                                             Variable Length Decoding

HuffmanTableInitAlloc

Allocates memory and initializes structure for table with one-to-one code/value correspondence.

HuffmanRunLevelTableInitAlloc

Allocates memory and initializes structure for table with one-to-two code/value correspondence.

DecodeHuffmanOne

Decodes one code using specified table and gets one decoded value.

DecodeHuffmanPair

Decodes one code using specified table and gets two decoded values.

HuffmanTableFree

Frees memory allocated for VLC table.

                                             Motion Compensation

MC16x16

Performs motion compensation for a predicted 16X16 block.

MC16x8

Performs motion compensation for a predicted 16X8 block.

MC8x16

Performs motion compensation for a predicted 8X16 block.

MC8x8

Performs motion compensation for a predicted 8X8 block.

MC8x4

Performs motion compensation for a predicted 8X4 block.

MC4x8

Performs motion compensation for a predicted 4X8 block.

MC4x4

Performs motion compensation for a predicted 4X4 block.

MC2x4

Performs motion compensation for a predicted 2X4 block.

MC4x2

Performs motion compensation for a predicted 4X2 block.

MC2x2

Performs motion compensation for a predicted 2X2 block.

MC16x4

Performs motion compensation for a predicted UV 16X4 block.

MC16x8UV

Performs motion compensation for a predicted UV 16X8 block.

MC16x16B

Performs motion compensation for a bi-predicted 16X16 block.

MC16x8B

Performs motion compensation for a bi-predicted 16X8 block.

MC8x16B

Performs motion compensation for a bi-predicted 8X16 block.

MC8x8B

Performs motion compensation for a bi-predicted 8X8 block.

MC8x4B

Performs motion compensation for a bi-predicted 8X4 block.

MC4x8B

Performs motion compensation for a bi-predicted 4X8 block.

MC4x4B

Performs motion compensation for a bi-predicted 4X4 block.

MC2x4B

Performs motion compensation for a bi-predicted 2X4 block.

MC4x2B

Performs motion compensation for a bi-predicted 4X2 block.

MC2x2B

Performs motion compensation for a bi-predicted 2X2 block.

MC16x4B

Performs motion compensation for a bi-predicted UV 16X4 block.

MC16x8UVB

Performs motion compensation for a bi-predicted UV 16X8 block.

Copy8x8, Copy16x16

Copy the fixed size block to the destination block.

Copy8x4HP, Copy8x8HP, Copy16x8HP, Copy16x16HP

Copy fixed size blocks with half-pixel accuracy.

InterpolateAverage8x4, InterpolateAverage8x8, InterpolateAverage16x8, InterpolateAverage16x16

Interpolate the source block according to half-pixel offset and average the result with the destination block.

Add8x8

Adds two blocks with saturation.

Add8x8HP

Adds blocks interpolated with half-pixel accuracy prediction to difference with saturation.

AddC8x8

Adds a constant to an 8x8 block with saturation.

Average8x8, Average16x16

Average two blocks.

                                             Motion Estimation

Difference Evaluation

GetDiff16x16

Evaluates difference between current predicted and reference blocks of 16x16 elements.

GetDiff16x8

Evaluates difference between current predicted and reference blocks of 16x8 elements.

GetDiff8x8

Evaluates difference between current predicted and reference blocks of 8x8 elements.

GetDiff8x16

Evaluates difference between current predicted and reference blocks of 8x16 elements.

GetDiff8x4

Evaluates difference between current predicted and reference blocks of 8x4 elements.

GetDiff4x4

Evaluates difference between current predicted and reference 4x4 blocks.

GetDiff16x16B

Evaluates difference between current bi-predicted and mean of two reference blocks of 16x16 elements.

GetDiff16x8B

Evaluates difference between current bi-predicted and mean of two reference blocks of 16x8 elements.

GetDiff8x8B

Evaluates difference between current bi-predicted and mean of two reference blocks of 8x8 elements.

GetDiff8x16B

Evaluates difference between current bi-predicted and mean of two reference blocks of 8x16 elements.

GetDiff8x4B

Evaluates difference between current bi-predicted and mean of two reference blocks of 8x4 elements.

Sub4x4, Sub8x8, Sub16x16

Subtract two blocks and store the result in the third block.

SubSAD8x8

Subtracts two block, stores the result in the third block and computes a sum of absolute differences.

Sum of Squares of Differences Evaluation

SqrDiff16x16

Evaluates sum of squares of differences between current and reference blocks.

SqrDiff16x16B

Evaluates sum of squares of differences between the current bi-predicted block and the mean of two reference blocks.

SSD8x8

Evaluates sum of squares of differences between current and reference 8X8 blocks.

SSD4x4

Evaluates sum of squares of differences between current and reference 4X4 blocks.

Block Variance and Mean Evaluation

VarMean8x8

Evaluates variance and mean of a 8X8 block of unsigned char or short integer values.

Evaluation of Variances and Means of Blocks of Difference Between Two Blocks

VarMeanDiff16x16

Evaluates variances and means of four 8x8 blocks of difference between two 16x16 blocks.

VarMeanDiff16x8

Evaluates variances and means of four 8x8 blocks of difference between two 16x8 blocks.

Block Variance Evaluation

Variance16x16

Evaluates variance of the current block.

Evaluation of Block Deviation

MeanAbsDev8x8

Evaluates mean absolute deviation for an 8x8 block.

MeanAbsDev16x16

Evaluates mean absolute deviation for a 16x16 block.

Edges Detection

EdgesDetect16x16

Detects edges inside a 16X16 block.

SAD Functions

SAD16x16

Evaluates sum of absolute difference between current and reference 16X16 blocks.

SAD16x8

Evaluates sum of absolute difference between current and reference 16X8 blocks.

SAD8x16

Evaluates sum of absolute difference between current and reference 8X16 blocks.

SAD8x8

Evaluates sum of absolute difference between current and reference 8X8 blocks.

SAD8x4

Evaluates sum of absolute difference between current and reference 8X4 blocks.

SAD4x8

Evaluates sum of absolute difference between current and reference 4X8 blocks.

SAD4x4

Evaluates sum of absolute difference between current and reference 4X4 blocks.

SAD16x16Blocks8x8

Evaluates four partial sums of absolute differences between current and reference 16X16 blocks.

SAD16x16Blocks4x4

Evaluates 16 partial sums of absolute differences between current and reference 16X16 blocks.

SATD16x16

Evaluates sum of absolute transformed differences between current and reference 16X16 blocks using 4x4 transform.

SATD16x8

Evaluates sum of absolute transformed differences between current and reference 16X8 blocks using 4x4 transform.

SATD8x16

Evaluates sum of absolute transformed differences between current and reference 8X16 blocks using 4x4 transform.

SATD8x8

Evaluates sum of absolute transformed differences between current and reference 8X8 blocks using 4x4 transform.

SATD8x4

Evaluates sum of absolute transformed differences between current and reference 8X4 blocks using 4x4 transform.

SATD4x8

Evaluates sum of absolute transformed differences between current and reference 4X8 blocks using 4x4 transform.

SATD4x4

Evaluates sum of absolute transformed differences between current and reference 4X4 blocks using 4x4 transform.

SAT8x8D

Evaluates sum of absolute transformed differences between current and reference 8X8 blocks using 8x8 transform.

FrameFieldSAD16x16

Calculates SAD between field lines and SAD between frame lines of a 16x16 block.

Sum of Differences Evaluation

SumsDiff16x16Blocks4x4

Evaluates difference between current and reference 4X4 blocks and calculates sums of 4X4 residual blocks elements for 16X16 blocks.

SumsDiff8x8Blocks4x4

Evaluates difference between current and reference 4X4 blocks and calculates sums of 4X4 residual blocks elements for 8X8 blocks.

                                             Scanning

ScanInv

Performs classical zigzag, alternate-horizontal, or alternate-vertical inverse scan on a block stored in a compact buffer.

ScanFwd

Performs classical zigzag, alternate-horizontal, or alternate-vertical forward scan on a block.

                                             Color Conversion

CbYCr422ToYCbCr420_Rotate

Converts 4:2:2 CbYCr image to 4:2:0 YCbCr image with rotation.

ResizeCCRotate

Creates a low-resolution preview image for high-resolution video or still capture applications.

                                             Video Processing

Deinterlacing

DeinterlaceFilterTriangle

Deinterlaces video plane.

DeinterlaceFilterCAVT

Performs deinterlacing of two-field image.

Median

Creates an image consisting of median values of three source images.

DeinterlaceMedianThreshold

Performs median deinterlacing with threshold.

DeinterlaceEdgeDetect

Generates image field using the EdgeDetect filter.

DeinterlaceMotionAdaptive

Performs deinterlacing using temporal and spatial interpolations.

DeinterlaceBlendGetSize

Calculates the size of internal structure for DeinterlaceBlend function.

DeinterlaceBlendInit

Initializes an internal structure for the DeinterlaceBlend function.

DeinterlaceBlendInitAlloc

Allocates and initializes an internal structure for the DeinterlaceBlend function.

DeinterlaceBlend

Calculates output pixel as alpha blends of the results of two filters applied to input pixels.

DeinterlaceBlendFree

Releases memory allocated by the DeinterlaceBlendInitAlloc function.

Denoising

FilterDenoiseCASTInit

Initializes a denoise specification structure for content adaptive spatio-temporal noise reduction filtering.

FilterDenoiseCAST

Performs content adaptive spatio-temporal (CAST) noise reduction filtering.

FilterDenoiseSmooth

Performs spatial noise reduction (SNR) filtering.

FilterDenoiseAdaptiveInitAlloc

Creates and initializes a denoise specification structure for spatio-temporal adaptive noise reduction filtering.

FilterDenoiseAdaptiveFree

Closes a denoise specification structure for spatio-temporal adaptive noise reduction filtering.

FilterDenoiseAdaptive

Performs spatio-temporal adaptive noise reduction filtering.

FilterDenoiseMosquitoInitAlloc

Creates and initializes a denoise specification structure for spatio-temporal motion adaptive mosquito noise reduction filtering.

FilterDenoiseMosquitoFree

Closes a denoise specification structure for spatio-temporal motion adaptive mosquito noise reduction filtering.

FilterDenoiseMosquito

Performs spatio-temporal motion adaptive mosquito noise reduction filtering.


Submit feedback on this help topic

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