ISFQuant_AMRWB

Quantizes the ISF.

Syntax

IppStatus ippsISFQuant_AMRWB_16s(const Ipp16s* pSrcIsf, Ipp16s* pSrcDstResidual, Ipp16s* pDstQIsf, Ipp16s* pDstQIsfIndex, IppSpchBitRate mode);

Parameters

pSrcIsf

Pointer to the unquantized 16-element ISF vector.

pSrcDstResidual

Pointer to the 16-element quantized ISF residual from the previous frame.

pDstQIsf

Pointer to the quantized 16-element ISF vector.

pDstQIsfIndex

Pointer to the 7-element vector of quantized ISF indices. For 6.60 Kbps frames, only the first five elements contain valid indices; for all other bit rates, all seven elements contain valid data.

mode

Coder mode.

Description

This function is declared in ippsc.h file. It applies a first order moving-average (MA) prediction and quantifies the residual ISF vector using a combination of split vector quantization (SVQ) and multistage vector quantization (MSVQ).

The prediction and quantization are performed as follows. Let z(n) denotes the mean-removed ISF vector at frame n.

The prediction residual vector r(n) is given by:

r(n) = z(n) - p(n)

where p(n) is the predicted LSF vector at frame n. First order moving-average (MA) prediction is used where:

p(n) = 1/3*ř(n-1),

where ř(n-1) is the quantized residual vector at the past frame.

The ISF residual vector r is quantized using split-multistage vector quantization S-MSVQ. The vector is split into two subvectors r1(n) and r2(n) of dimensions 9 and 7, respectively. The two subvectors are quantized in two stages. In the first stage r1(n) is quantized with 8 bits and r2(n) with 8 bits.

For 8.85 ,12.65, 14.25, 15.85, 18.25, 19.85, 23.05 or 23.85 kbit/s modes, the quantization error vectors are split in the next stage into 3 and 2 subvectors, respectively.

For 6.60 kbit/s mode, the quantization error vectors

ri(2) = r - ři, i = 1, 2.

are split in the next stage into 2 and 1 subvectors, respectively. A squared error ISF distortion measure is used in the quantization process. In general, for an input ISF or error residual subvector ri , i =1,2 a quantized vector at index k, řik the quantization is performed by finding the index k which minimizes



where m and n are the first and last elements of the subvector.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error when one of the specified pointers is NULL.

ippStsRangeErr

Indicates an error when mode is not a valid element of the enumerated type IppSpchBitRate.

Submit feedback on this help topic

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