AdaptiveCodebookDecode_AMRWB

Performs the adaptive codebook decoding.

Syntax

IppStatus ippsAdaptiveCodebookDecode_AMRWB_16s(int valAdptIndex, Ipp16s* pResultFracPitchLag, Ipp16s* pSrcDstExcitation, Ipp16s* pPitchLag, Ipp16s* pPitchLagBounds, int subFrame, int bfi, int unusableFrame, IppSpchBitRate mode, IppsAdaptiveCodebookDecodeState_AMRWB_16s* pState);

Parameters

valAdptIndex

Adaptive codebook index.

pResultFracPitchLag

Pointer to the fractional pitch lag obtained during the adaptive codebook search.

pSrcDstExcitation

Pointer to the 321-element excitation vector.

pPitchLag

Pointer to the integral pitch lag.

pPitchLagBounds

Pointer to the previous integral pitch lag bounds.

subFrame

Subframe number.

bfi

Bad frame indicator. Value "0" signifies a good frame; any other value signifies a bad frame.

unusableFrame

Value "0" signifies a lost frame with content that can not be used at all.

mode

Encoding mode.

pState

Pointer to the memory of the adaptive codebook decode module.

Description

This function is declared in ippsc.h file. It performs the following steps:

1. If no errors are detected on the current frame, the function extracts integer and fractional pitch lags from the adaptive codebook indices.

2. If errors are detected, the function recovers the integer pitch either from the previous integer pitch or the LTP-lag. See clause 6.2.3.4 in 3GPP TS 26.191 V5.1.0.

3. To obtain the adaptive codebook vector, the function ippsAdaptiveCodebookDecode_AMRWB applies the same adaptive codebook computation procedure as described in the function ippsAdaptiveCodebookSearch_AMRWB.

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.

ippStsSizeErr

Indicates an error when subFrame is less than 0 or greater than 3.

Submit feedback on this help topic

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