mlib_SignalLPCAutoCorrelGemediaLibmlib_SignalLPCAutoCorrelGetPARCOR_S16(3MLIB)NAME
mlib_SignalLPCAutoCorrelGetPARCOR_S16, mlib_SignalLPCAutoCorrelGetPAR‐
COR_S16_Adp - return the partial correlation (PARCOR) coefficients
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>
mlib_status mlib_SignalLPCAutoCorrelGetPARCOR_S16(
mlib_s16 *parcor, mlib_s32 pscale, void *state);
mlib_status mlib_SignalLPCAutoCorrelGetPARCOR_S16_Adp(
mlib_s16 *parcor, mlib_s32 *pscale, void *state);
DESCRIPTION
Each of the functions returns the partial correlation (PARCOR) coeffi‐
cients.
In linear predictive coding (LPC) model, each speech sample is repre‐
sented 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 mini‐
mizes 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 scal‐
ing 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:
parcor The partial correlation (PARCOR) coefficients.
pscale The scaling factor of the partial correlation (PARCOR) coef‐
ficients, where actual_data = output_data * 2**(-scaling_fac‐
tor).
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 │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOmlib_SignalLPCAutoCorrelInit_S16(3MLIB), mlib_SignalLPCAutoCor‐
rel_S16(3MLIB), mlib_SignalLPCAutoCorrelGetEnergy_S16(3MLIB), mlib_Sig‐
nalLPCAutoCorrelFree_S16(3MLIB), attributes(5)SunOS 5.10mlib_SignalLPCAutoCorrelGetPARCOR_S16(3MLIB)