Forums

peak continuation algorithm

Started by juli...@yahoo.com November 26, 2006
Hi,
For my final university project, i'm working on audio pitch shifting
using the FxEngine framework from smprocess and scilab. To succeed in
my project, I'm looking for papers, links about the peak continuation
algorithm. 

Thanks for your help, 
julius

julius_chelma@yahoo.com wrote:
> Hi, > For my final university project, i'm working on audio pitch shifting > using the FxEngine framework from smprocess and scilab. To succeed in > my project, I'm looking for papers, links about the peak continuation > algorithm.
"Peak continuation algorithm" means nothing to me, but I'm pretty ignorant about these things. There may be people here who are familiar with what you want to do, but by another name. You would more likely het the help you seek by more fully describing what you want to do. Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Google generates a lot of hits..... 


Hi jerry,
It's about "spectral" peak continuation algorithm for audio signal.

Julius

Jerry Avins a =E9crit :

> julius_chelma@yahoo.com wrote: > > Hi, > > For my final university project, i'm working on audio pitch shifting > > using the FxEngine framework from smprocess and scilab. To succeed in > > my project, I'm looking for papers, links about the peak continuation > > algorithm. > > "Peak continuation algorithm" means nothing to me, but I'm pretty > ignorant about these things. There may be people here who are familiar > with what you want to do, but by another name. You would more likely het > the help you seek by more fully describing what you want to do. > > Jerry > -- > Engineering is the art of making what you want from things you can get. > =AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=
=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF= =AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF=AF
julius_chelma@yahoo.com wrote:

> It's about "spectral" peak continuation algorithm for audio signal.
what it's really about is *connecting* spectral peaks in adjacent FFTed frames of the audio signal. each "peak" corresponds to single (windowed) sinusoid in the two frames. because it is not unusual that the frequencies sinusoids vary a bit, from frame to frame, it is not trivial to make these connections. it's also about the "birth" and "death" of sinusoidal components. but it can be done in the non-pathological cases. just use common sense. start with the biggest peaks and connect them to their nearest neighbor (in log frequency and within an allowable search range). once a destination peak has been matched to a peak in the previous frame, you need to mark it as "taken" so it can't be used again. then, when you do either sinusoidal modeling or (adjusting the phase of the peaks in the phase vocoder) you understand your sinusoidal frequency as moving _from_ the frequency of the peak in the previous frame _to_ the frequency of the matched peak in the current frame. that's what this is about. r b-j
julius_chelma@yahoo.com wrote:

> For my final university project, i'm working on audio pitch > shifting using the FxEngine framework from smprocess and scilab. > To succeed in my project, I'm looking for papers, links about > the peak continuation algorithm.
Another name is partial tracking. Martin -- Quidquid latine scriptum sit, altum viditur.
Martin Eisenberg wrote:
> julius_chelma@yahoo.com wrote: > > > For my final university project, i'm working on audio pitch > > shifting using the FxEngine framework from smprocess and scilab. > > To succeed in my project, I'm looking for papers, links about > > the peak continuation algorithm. > > Another name is partial tracking.
it's probably the best term for it. i guess there might be sinusoidal components that need tracking that are not a "partial" of some other tone or waveform, but i think that "partial tracking" is still a more concise term than "sinusoidal component tracking" by about 50%. r b-j
robert bristow-johnson wrote:

>>>For my final university project, i'm working on audio pitch >>>shifting using the FxEngine framework from smprocess and scilab. >>>To succeed in my project, I'm looking for papers, links about >>>the peak continuation algorithm. >> >>Another name is partial tracking. > > > it's probably the best term for it. i guess there might be sinusoidal > components that need tracking that are not a "partial" of some other > tone or waveform, but i think that "partial tracking" is still a more > concise term than "sinusoidal component tracking" by about 50%. > > r b-j >
At least as common is "peak tracking". The daddy of them is McAulay-Quatieri (MQ) (lots of Google hits) as used on the original Lemur tools (Apple MacOS). More recent developments can be found via the software tools: ATS: http://www-ccrma.stanford.edu/~juan/ATS_manual.html Loris: http://www.cerlsoundgroup.org/Loris/ CLAM: http://clam.iua.upf.edu/ Most of these now specialize and extend the basic peak tracking approach by separating the analysis into sinusoidal + stochastic (noise) streams. This is a very active and popular topic within the computer music and audio effcts communities; there are many papers for example in the DAFx proceeedings in various years, all freely downloadable. Just key DAFx into Google and you will find the links to the various years of the conferences. There is also the DAFx book (Ed. Udo Zolzer, pub. Wiley), but it is relatively expensive - get the University to buy it! It has lots of examples in Matlab (I believe they will also work in Octave); some fiddling may be required to translate them into Scilab code. I have not come across smprocess and their FxEngine before; too early for me to criticize it as such so I will just suggest that if you want a flow-graph or plugin architecture to work with (and with GUI tools such as their Network Editor), in relatively tractable C++, CLAM may be of particular relevance and interest to you. It also worth checking out the latest verisons of Csound, which has many opcodes supporting peak tracking, including direct support for ATS and Loris analysis files; and the code is in even more tractable ANSI C. Richard Dobson
I found a good paper from Ph.Depalle and X.Rodet about this in the
DAFx.
About the FxEngine, It seams to correspond to my needs but CLAM may be
a good alternative.

Thanks for your help,
julius.

Richard Dobson a =E9crit :

> robert bristow-johnson wrote: > > >>>For my final university project, i'm working on audio pitch > >>>shifting using the FxEngine framework from smprocess and scilab. > >>>To succeed in my project, I'm looking for papers, links about > >>>the peak continuation algorithm. > >> > >>Another name is partial tracking. > > > > > > it's probably the best term for it. i guess there might be sinusoidal > > components that need tracking that are not a "partial" of some other > > tone or waveform, but i think that "partial tracking" is still a more > > concise term than "sinusoidal component tracking" by about 50%. > > > > r b-j > > > > At least as common is "peak tracking". The daddy of them is > McAulay-Quatieri (MQ) (lots of Google hits) as used on the original > Lemur tools (Apple MacOS). More recent developments can be found via the > software tools: > > ATS: http://www-ccrma.stanford.edu/~juan/ATS_manual.html > > Loris: http://www.cerlsoundgroup.org/Loris/ > > CLAM: http://clam.iua.upf.edu/ > > > > Most of these now specialize and extend the basic peak tracking approach > by separating the analysis into sinusoidal + stochastic (noise) streams. > > This is a very active and popular topic within the computer music and > audio effcts communities; there are many papers for example in the DAFx > proceeedings in various years, all freely downloadable. Just key DAFx > into Google and you will find the links to the various years of the > conferences. There is also the DAFx book (Ed. Udo Zolzer, pub. Wiley), > but it is relatively expensive - get the University to buy it! It has > lots of examples in Matlab (I believe they will also work in Octave); > some fiddling may be required to translate them into Scilab code. > > I have not come across smprocess and their FxEngine before; too early > for me to criticize it as such so I will just suggest that if you want a > flow-graph or plugin architecture to work with (and with GUI tools such > as their Network Editor), in relatively tractable C++, CLAM may be of > particular relevance and interest to you. > > It also worth checking out the latest verisons of Csound, which has many > opcodes supporting peak tracking, including direct support for ATS and > Loris analysis files; and the code is in even more tractable ANSI C. >=20 > Richard Dobson