LevinsonDurbin_G728

Calculates LP coefficients from the autocorrelation coefficients.

Syntax

IppStatus ippsLevinsonDurbin_G728_16s_Sfs(const Ipp16s* pSrcAutoCorr, int order, Ipp16s* pDstLPC, Ipp16s* pDstResidualEnergy, Ipp16s* pDstScaleFactor);

IppStatus ippsLevinsonDurbin_G728_16s_ISfs(const Ipp16s* pSrcAutoCorr, int numSrcLPC, int order, Ipp16s* pSrcDstLPC, Ipp16s* pSrcDstResidualEnergy, Ipp16s* pSrcDstScaleFactor);

Parameters

pSrcAutoCorr

Pointer to the input autocorrelation coefficients vector [order+1].

order

The input number of LP coefficients to calculate.

numSrcLPC

The input number of pre-calculated LPCs.

pDstLPC

Pointer to the output LPC vector [ order].

pSrcDstLPC

Pointer to the input/output LPC vector [order].

pDstResidualEnergy

Pointer to the output residual energy.

pSrcDstResidualEnergy

Pointer to the input/output residual energy of the pre-calculated LPC.

pDstScaleFactor

Pointer to the output scale factor of the LPC vector.

pSrcDstScaleFactor

Pointer to the input scale factor of the pre-calculated LPC and the output scale factor of the output LPC vector.

Description

The function ippsLevinsonDurbin_G728 is declared in ippsc.h file.

ippsLevinsonDurbin_G728_16s_Sfs. This function may be used to calculate Linear Prediction (LP) coefficients by solving the following set of linear equations:



where ai, i = 0,1,...,order-1 are the LP coefficients to be calculated and stored in the output LPC vector. The description of the Levinson-Durbin algorithm used by this function may be found in the description of the function ippsLevinsonDurbin_G729.

Both ippsLevinsonDurbin_G728 and ippsLevinsonDurbin_G729B calculate mathematically the same, but not bit exact LPCs. The difference is that the ippsLevinsonDurbin_G729B function outputs LPCs in Q12, while the ippsLevinsonDurbin_G728 function automatically rescales the LPCs if overflow occurs.

ippsLevinsonDurbin_G728_16s_Isfs. This function may be used to continue Levinson-Durbin recursion for bigger order. The LPCs, their scale factor and the residual energy of the previous recursion and the additional autocorrelation coefficients are used to resume recursion.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

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

ippStsRangeErr

Indicates an error when order is less than or equal to 0, or when order < numSrcLPC for the in-place function.

Submit feedback on this help topic

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