# Understanding LPC for Formant Estimation

I went through the Matlab tutorial on Formant Estimation using LPC Coefficients. Though I vaguely understand the details, it's not entirely clear why we need to do this. From http://person2.sol.lu.se/SidneyWood/praate/whatform.html:

A formant is a concentration of acoustic energy around a particular frequency in the speech wave

Why is it not enough to take the DFT of the audio signal (after some pre-processing if necessary)? In the frequency-domain, the peaks correspond to these concentrations, correct?

• the peaks (or line spectra) are where sinusoidal components go. the formants are like an envelope to those spectral lines in the frequency domain. not the same thing. Oct 23, 2016 at 1:30

The frequency resolution of DFT is limited to the number of time samples. On the other hand proper LPC can have high resolution.

• But would the resolution not fade given more predictions? Oct 3, 2017 at 12:45
• @BobBurt Really do not understand what do you mean. what does more prediction means: More data? If so: we are assuming model is correct so more data means better only as data follows the model. Oct 3, 2017 at 20:34

DFT is limited to a large number of samples that are an even power of 2. LPCs can be abstracted locally from a small number of samples, even the order M + 3 or so [so for a 12th-order filter could get by with 15 samples], and are not restricted to N being a power of 2. That said, the general idea is pretty much correct; you can think of the formants as being fat peaks in the frequency domain if it helps you to visualize what's going on.

I don't like the other answers. You can just zero pad the DFT to obtain higher resolutions.

The primary reason is that the spectrum is tainted by pitch harmonics, and thus the accuracy of just using a DFT will be limited by the pitch (higher pitchs will not be very accurate).

What you really want are the peaks of the spectral envelope, and the peaks of the spectrum will only approximate the peaks of the envelope. LPC is one method to extract the envelope.

• How do you get resolution with zero padding?? Feb 13 at 1:16
• @Creator There is a function corresponding to you data, from which DTFT of size N gets N samples, zero padding increases N. see the graph here dsp.stackexchange.com/a/37931/49786. however, to increase the "frequency resolution" of the underlying function you need to increase the sample rate, use a window function. So there are two aspects to frequency resolution. Feb 13 at 2:16
• Increasing the sampe rate is different than zero padding. You get better resolution by increasing the sample rate not by zero padding. That is all I meant. Feb 13 at 3:02
• @Creator no, you need to adjust both to get a good stft Feb 14 at 2:28