cc [ flag... ] file... –lmlib [ library... ] #include <mlib.h> mlib_status mlib_SignalLPC2Cepstral_S16(mlib_s16 *cepst, mlib_s32 cscale, const mlib_s16 *lpc, mlib_s32 lscale, mlib_s16 gain, mlib_s32 gscale, mlib_s32 length, mlib_s32 order);
The mlib_SignalLPC2Cepstral_S16() function converts linear prediction coefficients to cepstral coefficients. The user supplied scaling factor, cscale, will be used and the output will be saturated if necessary.
The cepstral coefficients are the coefficients of the Fourier transform representation of the log magnitude spectrum.
The LPC cepstral coefficients can be derived recursively from the LPC coefficients as following.
c(0) = log(G) m-1 k c(m) = a(m) + SUM --- * c(k) * a(m-k), 1 ≤ m ≤ M k=1 m m-1 k c(m) = SUM --- * c(k) * a(m-k), m > M k=1 m
See Fundamentals of Speech Recognition by Lawrence Rabiner and Biing-Hwang Juang, Prentice Hall, 1993.
The function takes the following arguments:
The cepstral coefficients.
The scaling factor of the cepstral coefficients, where actual_data = output_data * 2**(-scaling_factor).
The linear prediction coefficients.
The scaling factor of the linear prediction coefficients, where actual_data = input_data * 2**(-scaling_factor).
The gain of the LPC model.
The scaling factor of the gain of the LPC model, where actual_data = input_data * 2**(-scaling_factor).
The length of the cepstral coefficients.
The order of the linear prediction filter.
The function returns MLIB_SUCCESS if successful. Otherwise it returns MLIB_FAILURE.
See attributes(5) for descriptions of the following attributes:
|
mlib_SignalLPC2Cepstral_S16(3MLIB), mlib_SignalLPC2Cepstral_S16_Adp(3MLIB), mlib_SignalLPC2Cepstral_F32(3MLIB), attributes(5)