[vorbis-dev] Why LSP?

Monty xiphmont at xiph.org
Tue Aug 29 18:22:39 PDT 2000



> (Disclaimer: this is not an LPC vs. LSP question)
> 
> After looking at the Vorbis code I was wondering why you were using LSP to
> quantize the spectral envelope instead of simply quantizing the cepstrum
> (DCT(log(envelope))) or modified cepstrum (DCT(envelope.^alpha)). To me it seems
> like when the information is already in the frequency domain, there's no need to
> go back to LPC. Also, I think a DCT can be faster that a Levinson-Durbin
> recursion. This is why I'd like to know whether there's a special reason I'm not
> aware of for quantizing the LSP.

Well, you're correct that cepstrum be implementing a very similar idea. In 
fact I'm encoding the LSP(log(envelope)) so in a way it's a closer parallel 
than is obvious ;-)  The reason I'm not quantizing the DCT is that LSP 
quantization does not produce ripple and irregularity throughout the envelope 
like quantizing a DCT would (and the DCT quantization error would tend to be 
greatest at the edges).  LSP quantization produces a more localized, 
predictable effect with less work.

Monty

--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/



More information about the Vorbis-dev mailing list