Content-type: text/html Man page of mlib_SignalLPCAutoCorrelGetEnergy_S16

mlib_SignalLPCAutoCorrelGetEnergy_S16

Section: mediaLib Library Functions (3MLIB)
Updated: 2 Mar 2007

NAME

mlib_SignalLPCAutoCorrelGetEnergy_S16, mlib_SignalLPCAutoCorrelGetEnergy_S16_Adp - return the energy of the input signal

SYNOPSIS

```cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>

mlib_status mlib_SignalLPCAutoCorrelGetEnergy_S16(
mlib_s16 *engery, mlib_s32 escale, void *state);
```

```mlib_status mlib_SignalLPCAutoCorrelGetEnergy_S16_Adp(
mlib_s16 *engery, mlib_s32 *escale, void *state);
```

DESCRIPTION

Each of the functions returns the energy of the input signal.

In linear predictive coding (LPC) model, each speech sample is represented as a linear combination of the past M samples.

```                M
s(n) = SUM a(i) * s(n-i) + G * u(n)
i=1
```

where s(*) is the speech signal, u(*) is the excitation signal, and G is the gain constants, M is the order of the linear prediction filter. Given s(*), the goal is to find a set of coefficient a(*) that minimizes the prediction error e(*).

```                       M
e(n) = s(n) - SUM a(i) * s(n-i)
i=1
```

In autocorrelation method, the coefficients can be obtained by solving following set of linear equations.

```         M
SUM a(i) * r(|i-k|) = r(k), k=1,...,M
i=1
```

where

```              N-k-1
r(k) = SUM s(j) * s(j+k)
j=0
```

are the autocorrelation coefficients of s(*), N is the length of the input speech vector. r(0) is the energy of the speech signal.

Note that the autocorrelation matrix R is a Toeplitz matrix (symmetric with all diagonal elements equal), and the equations can be solved efficiently with Levinson-Durbin algorithm.

See Fundamentals of Speech Recognition by Lawrence Rabiner and Biing-Hwang Juang, Prentice Hall, 1993.

Note for functions with adaptive scaling (with _Adp postfix), the scaling factor of the output data will be calculated based on the actual data; for functions with non-adaptive scaling (without _Adp postfix), the user supplied scaling factor will be used and the output will be saturated if necessary.

PARAMETERS

Each function takes the following arguments:

energy

The energy of the input signal.

escale

The scaling factor of the energy, where actual_data = output_data * 2**(-scaling_factor).

state

Pointer to the internal state structure.

RETURN VALUES

Each function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

 ATTRIBUTE TYPE ATTRIBUTE VALUE Interface Stability Committed MT-Level

mlib_SignalLPCAutoCorrelInit_S16(3MLIB), mlib_SignalLPCAutoCorrel_S16(3MLIB), mlib_SignalLPCAutoCorrelGetPARCOR_S16(3MLIB), mlib_SignalLPCAutoCorrelFree_S16(3MLIB), attributes(5)

NAME
SYNOPSIS
DESCRIPTION
PARAMETERS
RETURN VALUES
ATTRIBUTES