Basic Concepts

This chapter provides an overview of the information contained in the functional descriptions.

Video Coding library functional descriptions include the following types of information.

Enumerators

Video Coding library function definitions use the following enumerators.

FwvcFrameFieldFlag   Enumerates image type of the picture.
fwintra16x16PredMode_H264   Enumerates prediction modes for the Intra_16x16 prediction process of luma compoments.
fwintra4x4PredMode_H264   Enumerates prediction modes for the Intra_4x4 prediction process of luma compoments.
fwintraChromaPredMode_H264   Enumerates prediction modes for the Intra prediction process of chroma compoments.

Parameter Glossary

Video Coding library function definitions use the following parameters.

AC   AC compoment
ChromaQP   Chroma quantizer, must be within the range [0;39].
DstStep   Size of a row in bytes, the aligned destination frame width.
EdgePelCount   Specifies the minimum number of pairs of elements that differ by more than EdgePelDifference.
EdgePelDifference   Specifies the edge difference threshold between neighboring elements.
PredStep   Reference plane step size (in bytes).
QP   Quantizer scale factor read from the bitstream.
StartPtr   Pointer to frame source data.
Switch   Flag that indicates picture switch (non-zero when a switch occurs, equal to zero otherwise).
availability   Flag that indicates availability of the samples used for prediction.
cbp4x2   Coded block pattern. If cbp4x2 & (1<<(1+i))is not equal to 0 (0 < i < 8), i-th 4x4 AC. Luma block is not zero-filled and it exists in ppSrcCoeff.
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.
count   Number of the last non-zero coefficient in zig-zag order. When a block contains no non-zero coefficients, the value is -1.
countU   Number of the last non-zero U coefficient in zig-zag order. When a block contains no non-zero coefficients, the value is -1.
countV   Number of the last non-zero V coefficient in zig-zag order. When a block contains no non-zero coefficients, the value is -1.
dstDiffStep   Destination block step size (width of the block in bytes).
dstPredictorStep   Destination predictor block step size (width of the block in bytes).
dstStep   Step of the destination array.
dx   Fractional part of the x-coordinate in a source image.
dy   Fractional part of the y-coordinate in a source image.
edgeType   Specifies a vertical or horizontal edge.
edgeTypeBottom   Flag that indicates the availability of the upper half of a macroblock used for prediction. The upper and lower halves of a macroblock may have different prediction vectors. There is one flag for each half.
edgeTypeTop   Flag that indicates the availability of the lower half of a macroblock used for prediction. The upper and lower halves of a macroblock may have different prediction vectors. There is one flag for each half.
height   Specifies the height of a block.
intraChromaMode   Specifies the operating mode of the intrachroma prediction process.
isSigned   Flag that indicates whether an output value must be decoded as signed.
mcType   Specifies the type of prediction used for motion compensation.
mcTypeB   Specifies the type of prediction used for backward frame motion compensation.
mcTypeF   Specifies the type of prediction used for forward frame motion compensation.
nAlpha   A calculated deblock filter value.
nBeta   A calculated deblock filter value.
offset   Specifies an offset.
outPixels   The number of pixels by which the data specified by pSrc reaches over the frame top boundary.
pACTable   Pointer to a table containing run-level codes for all DCT coefficients other than the first one.
pAlpha   Pointer to an array of size 2 of alpha thresholds (values for external and internal vertical edge).
pBS   Pointer to an array of size 16 of BS parameters (values for the left edge of each 4x4 block).
pBeta   Pointer to an array of size 2 of beta thresholds (values for external and internal vertical edge).
pBitOffset   Pointer to a bit position within the byte that ppBitStream points to. Valid within the range 0 to 7. The pointer is updated after motion vector decoding.
pDC   Pointer to an output coefficient.
pDCPred   Pointer to a value to be added to the DC coefficient. The value is read from the standard table.
pDCPredict   Pointer to an array (size 4) of the of inter-prediction DC samples for the current macroblock after inverse transform. Inverse transform of the inter prediction samples can be calculated using TransformPrediction_H264 function for each 4x4 block.
pDCSizeTable   Pointer to a table containing codes for the DC coefficient (the first of the DCT coefficients).
pDCTable   Pointer to a table containing codes for the DC coefficient (the first of the DCT coefficients).
pDecodeTable   Pointer to a decoding table.
pDiff   Pointer to an array of size 16 that contains the sums of 4X4 difference block coefficients.
pDst   Pointer to a location in a destination buffer, a location in a destination array or to a destination result.
pDstBlock   Pointer to a block of decoded elements.
pDstDiff   Pointer to a 16X16 block in the destination plane which contains differences between current and reference blocks.
pDstPredictor   Pointer to a destination predictor block.
pDstSAD   Pointer to a destination array of size 4 that stores SAD values.
pDstSize   Pointer to the position of the last non-zero block coefficient in scanning sequence.
pDstUV   Pointer to a UV destination array.
pFirst   Pointer to the first destination value.
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 ).
pMean   Pointer to a computed mean of pixel values.
pNumCoeff   Pointer to the output number of non-zero coefficients.
pOffset   Pointer to the offset between the bit that ppBitStream points to and the start of the code.
pPred   Pointer to a 16x16 predictor block in the reference plane.
pPredictBlock   Pointer to array (size 16) of inter-prediction samples for the current macroblock after inverse transform. Samples are calculated using the TransformPrediction_H264 function.
pQPMatrix   Pointer to a standard or user-defined weighting matrix.
pRef   Pointer to a prefetch buffer which contains previously decoded bits.
pRefB   Pointer to a backward-reference block of specified size.
pRefF   Pointer to a forward-reference block of specified size.
pRes   Pointer to a result value.
pSAD   Pointer to an SAD result.
pScanMatrix   Pointer to a matrix containing indices of elements in a scanning sequence.
pSecond   Pointer to a second destination value.
pSqrDiff   Pointer to a sum of square differences between the current and reference blocks.
pSrc   Pointer to a block of DCT coefficients.
pSrc1   Pointer to a location in source buffer one.
pSrc2   Pointer to a location in source buffer two.
pSrc2Dst   Pointer to the second source and result.
pSrcCur   Pointer to a block in the current plane.
pSrcDst   Pointer to the start of the block.
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.
pSrcDstYPlane   Pointer to the current macroblock that is reconstructed in current Y-plane. This macroblock must contain inter prediction samples.
pSrcRef   Pointer to a block in the reference plane.
pSrcRefB   Pointer to a backward block in the reference plane.
pSrcRefF   Pointer to a forward block in the reference plane.
pSrcSum   Pointer to a sum of pixel values for the current block.
pSrcTable   Pointer to a source table.
pSrcU   Pointer to a block of DCT coefficients for U component.
pSrcV   Pointer to a block of DCT coefficients for V component.
pSrcYData   Pointer to a block of inverse DCT output data.
pSums   Pointer to an array of size 256 that contains a sequence of 4X4 residual blocks.
pTblCoeffToken   Pointer to a table of coefficient tokens.
pThresholds   Pointer to an array of size 16 of threshold (Tc0) values for the left edge of each 4x4 block.
pVar   Pointer to a variance value.
pitch   Specifies memory pitch.
ppBitStream   Double pointer to the current position in the bit stream.
ppDecodeTable   Double pointer to a decoding table.
ppDstCoeffs   Double pointer to a 4x4 block of coefficients calculated by the function. The function shifts pointer *ppDstCoeffs on 16.
ppDstSpec   Double pointer to a destination decoding table.
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.
ppTblCoeffToken   Double pointer to a CoeffToken table.
ppTblRunBefore   Double pointer to a RunBefore table.
ppTblTotalZeros   Double pointer to a TotalZeros table.
ppTblTotalZerosCR   Double pointer to a chroma DC TotalZeros table.
predMode   Specifies the prediction mode of the Intra_4x4 prediction process for luma samples.
predStep   Reference plane step size (in bytes).
qp   Quantization parameter (QPY in [JVTG050]). It must be within the range [0;51].
qs   Quantization parameter qs.
refStep   Reference block step size (width of the block in bytes).
refStepB   Backward reference frame reference block step size (width of the block in bytes).
refStepF   Forward reference frame reference block step size (width of the block in bytes).
roiSize   Specifies the height and width of an ROI.
roundControl   Specifies the type of rounding used for half-pixel approximation.
shift   Specifies shift size.
shiftDCVal   Integer value. The DC coefficient must be multiplied by 2shiftDCVal.
srcCurStep   Source current block step size (width of the block in bytes)
srcDstStep   Source and destination buffer step size in bytes (width of both buffers in bytes).
srcDstUVStep   Plane step size.
srcDstYStep   Y-plane step size.
srcRefStep   Source reference block step size (width of the block in bytes)
srcRefStepB   Source backward reference block step size (width of the block in bytes)
srcRefStepF   Source forward reference block step size (width of the block in bytes)
srcStep   Source buffer step size (width of the buffer in bytes).
srcStepB   Source-aligned backward reference frame step size (width in bytes).
srcStepF   Source-aligned forward reference frame step size (width in bytes).
srcYDataStep   Source-aligned DCT output data block step size (width of the block in bytes).
step   Plane step
uFrameFieldFlag   Flag that indicates an expansion method for various image types: frame, top field, bottom field.
uFrameHeight   Frame height in pixels.
uFrameWidth   Frame width in pixels.
uMaxNumCoeff   Maximum number of coefficients in a block (16 for Intra 16x16, 15 for others).
uPels   Number of pixels filled to the right/left and up/down in process of expansion.
uPitch   Frame width in bytes.
uVLCSelect   Predictor on number of CoeffToken table.
weight1   Weighting factor.
weight2   Weighting factor.
width   Block width.