Hi Ed,
On Tue, 2005-11-01 at 21:46 +0000, Ed Kelly wrote:
I am already kind of stupid by not spotting the peak~ flib - since I could have saved some effort, but no matter! I hope the things I write are useful - to me they present interesting possibilities to make music. I've seen some great externs for PD at conferences that people keep to themselves, but I love open source because we all collaborate to make tools - or to update them - and ways to use them.
I completely agree. Also, whilst it is probably good to know when you are doing it, I don't think duplication of effort is always a bad thing, especially for small projects like these. After all, I could have based my code on pique! Instead, I wanted to start from scratch so I could i)gain experience ii) really understand properly how peak detection works iii)make a self contained library. If it makes you feel any better, I might have written peak~ even if peakit~ had already been available, just for the reasons I mention above.
The release of listmoses was impulsive since I released a broken version (sorry!) but it's fixed I think, and I think it's useful so I posted it. It's meant to go with peakit~ so I posted that. The idea (eventually) is to make a McAuley-Quatieri partial tracking external for PD - I think it would be nice to have one of these, and it should eventually be a signal analysis/resynthesis combination of externs, rather like the lpc~/lpreson~ I did with Nico Chetry. The principle is something like Xavier Serra's SMS synthesis, but I think in order to make it efficient in real-time it may have to sacrifice some accuracy for efficiency. It has to work with whatever else we want to do in PD.
Sounds good!
Right. Peakit v0.2 will be better once I have fixed the bugs, as it will give peak (maximum magnitude and corresponding frequency) values for normalisation,
You can already do this with flib as well. The bmax~ external returns the first n locations of the highest value in a signal vector. You can then use the location in the block to lookup the corresponding frequency.
Again though, you might argue that it would be nice to have one extern that does all of this, and that it might also be more efficient to do it all in one.
Good luck. Maybe we can collaborate at some point.
Jamie