EncodeCoeffsIntra_H261

Encodes and puts quantized DCT coefficients for intra coded block into bitstream.

Syntax

IppStatus ippiEncodeCoeffsIntra_H261_16s1u(Ipp16s* pQCoef, Ipp8u** ppBitStream, int* pBitOffset, int countNonZero, int scan);

Parameters

pQCoef

Pointer to the array of quantized DCT coefficients. pQCoef[0] is the DC coefficient.

ppBitStream

Pointer to pointer to the current byte in the bitstream buffer. **ppBitStream is updated by the function.

pBitOffset

Pointer to the bit position in the byte pointed by **ppBitStream. Valid within the range 0 to 7. *pBitOffset is updated by the function.

countNonZero

Number of non-zero coefficients in the block. Valid within the range 1 to 64.

scan

Type of the scan to be performed on the coefficients before encoding, takes one of the following values:

IPPVC_SCAN_ZIGZAG,

indicating the classical zigzag scan,

IPPVC_SCAN_NONE,

indicating that no scan is to be performed, that is, the input coefficients are already in the scan order.

See the corresponding enumerator in the introduction to the General Functions.

Description

The function ippiEncodeCoeffsIntra_H261_16s1u is declared in the ippvc.h header file. This function performs encoding of the quantized DCT coefficients in a scan order for one intra coded block and puts the codes into the bitstream. DC fixed length and AC VLC encoding processes are specified in [ITUH261], subclause 4.2.4.1.

This function is used in the H.261 encoder included into Intel IPP Samples. See introduction to H.261.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error condition if at least one of the specified pointers is NULL.

ippStsBitOffsetErr

Indicates an error condition if *pBitOffset is out of the range [0, 7].

ippStsOutOfRangeErr

Indicates an error condition if countNonZero is out of the range [1, 64].


Submit feedback on this help topic

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