cPlp

Description

This component computes PLP and RASTA-PLP (currently the RASTA filter is not yet implemented) cepstral coefficients from a critical band spectrum (generated by the cMelspec component, for example).

The component is capable of performing the following processing steps:

1) Take the natural logarithm of the critical band powers (doLog)

2) RASTA filtering

3) Computation of auditory spectrum (equal loudness curve and loudness compression)

4) Inverse of the natural logarithm

5) Inverse DFT to obtain autocorrelation coefficients

6) Linear prediction analysis on autocorr. coeff.

7) Computation of cepstral coefficients from lp coefficients

8) Cepstral 'liftering'

Type hierarchy

cDataProcessorcVectorProcessorcPlp

Fields

  • lpOrder (numeric) [default: 5.0]

    The order of the linear predictor (5th order is optimal according to Hermansky 1990, JASA)

  • nCeps (numeric) [default: -1.0]

    The number of cepstral coefficients (must be <= lpOrder, set to -1 for max. (=lpOrder))

  • firstCC (numeric) [default: 1.0]

    The first cepstral coefficient to compute (set to 0 to include the 0th coefficient, which is defined as -log(1/lpcGain) )

  • lastCC (numeric) [default: -1.0]

    The last cepstral coefficient to compute (set to -1 to use nCeps, else lastCC will override nCeps!)

  • doLog (numeric) [default: 1.0]

    Take the log of input bands (1=yes / 0=no)

  • doAud (numeric) [default: 1.0]

    Do auditory processing (equal loudness curve and loudness compression) (1=yes / 0=no)

  • RASTA (numeric) [default: 0.0]

    Perform RASTA (temporal) filtering (1=yes / 0=no)

  • newRASTA (numeric) [default: 0.0]

    Perform RASTA (temporal) filtering (more stable filter, Type-II, initial filtering only with FIR part; thanks to Chris Landsiedl for this code!) (1=enable / 0=disable) Note: this option (if set to 1) will disable the 'RASTA' option.

  • rastaUpperCutoff (numeric) [default: 29.0]

    Upper cut-off frequency of RASTA bandpass filter in Hz

  • rastaLowerCutoff (numeric) [default: 1.0]

    Lower cut-off frequency of RASTA bandpass filter in Hz

  • doInvLog (numeric) [default: 1.0]

    Apply inverse logarithm after power compression (1=yes / 0=no)

  • doIDFT (numeric) [default: 1.0]

    Apply I(nverse)DFT after power compression and inverse log (1=yes / 0=no)

  • doLP (numeric) [default: 1.0]

    Do lp analysis on autocorrelation function (1=yes / 0=no)

  • doLpToCeps (numeric) [default: 1.0]

    Convert lp coefficients to cepstral coefficients (1=yes / 0=no)

  • cepLifter (numeric) [default: 0.0]

    Parameter for cepstral 'liftering', set to 0.0 to disable cepstral liftering

  • compression (numeric) [default: 0.33]

    Compression factor for 'power law of hearing'

  • melfloor (numeric) [default: 9.3e-10]

    Minimum value of melspectra when computing mfcc (will be forced to 1.0 when htkcompatible=1)

  • htkcompatible (numeric) [default: 1.0]

    Set correct mel-floor and force HTK compatible PLP output (1/0 = yes/no) - htkcompatible == 1, forces the following settings:

    • - melfloor = 1.0 (signal scaling 0..32767*32767)

    • - append 0th coeff instead of having it as first value

    • - doAud = 1 , doLog=0 , doInvLog=0 (doIDFT, doLP, and doLpToCeps are not forced to 1, this enables generation of HTK compatible auditory spectra, etc. (these, of course, are not compatible, i.e. are not the same as HTK's PLP))

    • - the 0th audspec component is used as dc component in IDFT (else the DC component is zero)