DSPRelated.com
Forums

high quality results with LPC?

Started by igor b. December 13, 2009
Is it possible to get high quality results using linear prediction for 
voice modeling (singing voice, to be more specific) assuming we have 
enough processing power, bandwith and other stuff? All papers I've found 
focus on compression.

igor b. wrote:

> Is it possible to get high quality results using linear prediction for > voice modeling (singing voice, to be more specific) assuming we have > enough processing power, bandwith and other stuff? All papers I've found > focus on compression.
If you have enough of everything, then you can get anything you like. LPC is just one of the tools. Could you be more specific with your question? Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
On 13 Des, 17:23, "igor b." <ecne...@REMOVEgmail.com> wrote:
> Is it possible to get high quality results using linear prediction for > voice modeling (singing voice, to be more specific) assuming we have > enough processing power, bandwith and other stuff? All papers I've found > focus on compression.
If you have enough bandwidth, there is no point in computing the LPCs. One can just as well transmit or store the raw data. Rune

Rune Allnor wrote:

> On 13 Des, 17:23, "igor b." <ecne...@REMOVEgmail.com> wrote: > >>Is it possible to get high quality results using linear prediction for >>voice modeling (singing voice, to be more specific) assuming we have >>enough processing power, bandwith and other stuff? All papers I've found >>focus on compression. > > > If you have enough bandwidth, there is no point in > computing the LPCs. One can just as well transmit > or store the raw data.
He is talking about modeling, not data compression. FWIW there are high quality codecs, based on LPC lossy compression. They claim somewhat 1.5 times better compression compared to mp3. VLV
On Sun, 13 Dec 2009 10:49:35 -0600, Vladimir Vassilevsky wrote:

> If you have enough of everything, then you can get anything you like. > LPC is just one of the tools. Could you be more specific with your > question? >
I am working on a real time (singing) voice processing project and looking for best approach to do pitch shifting and voice manipulation, so focus is not on low bitrate for data transmission but on quality of the resulting signal. Currently I am reading about TD-PSOLA and phase vocoder for pitch shifting but LPC would make whole thing about manipulation (gender changing, harmonization, ...) much easier. From everything I've found about LPC untill now, I can only make resulting signal that sounds very unrealistic (robotic).
igor b. wrote:
> On Sun, 13 Dec 2009 10:49:35 -0600, Vladimir Vassilevsky wrote: > >> If you have enough of everything, then you can get anything you like. >> LPC is just one of the tools. Could you be more specific with your >> question? >> > > I am working on a real time (singing) voice processing project and > looking for best approach to do pitch shifting and voice manipulation, so > focus is not on low bitrate for data transmission but on quality of the > resulting signal. > > Currently I am reading about TD-PSOLA and phase vocoder for pitch > shifting but LPC would make whole thing about manipulation (gender > changing, harmonization, ...) much easier. > > From everything I've found about LPC untill now, I can only make > resulting signal that sounds very unrealistic (robotic).
Consider the name: /Linear/ predictive coding. You can approximate many curves fairly well with parabolas, and quite well by adding cubics. Restricting approximations to straight lines isn't good for fidelity. There is a lot of material at http://www.google.com/search?q=pitch+shifting+download. In particular, check out the tutorials and code at Stephan Bernsee's site, http://www.dspdimension.com/ Jerry -- Engineering is the art of making what you want from things you can get. &macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;&macr;
igor b. <ecnelis@REMOVEgmail.com> wrote:

>I am working on a real time (singing) voice processing project and >looking for best approach to do pitch shifting and voice manipulation, so >focus is not on low bitrate for data transmission but on quality of the >resulting signal. > >Currently I am reading about TD-PSOLA and phase vocoder for pitch >shifting but LPC would make whole thing about manipulation (gender >changing, harmonization, ...) much easier. > >From everything I've found about LPC untill now, I can only make >resulting signal that sounds very unrealistic (robotic).
You should be able to get it to work. You might need a feed-forward adaptive filter, wherein you first estimate LPC coefficients on windowed data, and then apply them to a time-varying filter (which almost always, should be in a lattice configuration). You can then analyze the residual for parameters such as pitch, re-synthesize the residual with the desired manipulation, and then go through your synthesis filter. The trick will be successful windowing. LPC for speech is typically done by a repeated tream of fixed-length windows. For singing, you may need to do phrasing analysis on the voice signal to reduce the robot quality. Should be a fun project. Don't give up too easily.... Steve
On Sun, 13 Dec 2009 20:37:12 +0000, Steve Pope wrote:

> You should be able to get it to work. You might need a feed-forward > ... > ... > Should be a fun project. Don't give up too easily.... > > Steve
Thanks for your answer! I'm definitely not giving up. Yet :)