On Mon, May 23, 2005 at 09:35:02AM +0100, matthew jones wrote:
filter which looks for discontinuities greater than a certain amplitude
Well at first that sounds just like a low-pass filter... Which would probably ruin the sound of the signal passing through it.
Yeah no, thought of that one - no good.
Two things: you could write an abstraction/external to do a fancy non-linear filtering, based on a threshold. I think I remember seeing stuff in Max related to this, like the 'temperature' of the signal which was simply the difference between this sample and the last (..?). So you could possibly control the cutoff of the low-pass filter based on the output of a 1-tap high-pass IIR filter that simply gave you the difference between consecutive samples.. But this would bring plenty of difficulties related to reaction speed and distortion. Oh, but you know when it is going to click..anyway..
This sounds a bit more like what I want. I want to filter out large amplitude discontinuities in the signal without filtering all high frequencies, especially not those of 'normal' amplitude.
Secondly, the nicest approach would be to use windows (or envelopes) where before you jump to a new place in the array, you begin fading in the new position output (and fading out the old position output). If you use half-sine waves around 50ms in length as your windows then I would be surprised if you ever heard any more clicks.
Cool, thanks for the idea. I'll do that if I can't get a discontinuity detector working.
Best,
chris@mccormick.cx http://mccormick.cx