Performs the adaptive codebook decoding.
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);
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. |
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.
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. |
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.