On Fri, Feb 01, 2008 at 07:37:33PM +0100, Albert Graef wrote: > > But what about resampling? The main main signal usually needs to > > be resampled up 5-10 times to get a decent sound. Can I do that > > with faust? Something like: > > > > process = resample(5,d) > > I want that, too. :) There's no (easy) way to do resampling inside Faust > right now, because Faust doesn't support multirate processing yet. I > know that Yann has this on his TODO list, as we already discussed it > last summer. Once multirate processing is there, adding samplerate > conversion (either programmed in Faust or by calling an external C > routine) shouldn't be a big deal any more.
Won't be easy I'd think. Both resampling and fractional sample delay lead to the same problem with different constraints - interpolation. And you can't do high quality interpolation without delay: the simple fact is that the value halfway between two samples depends on _all_ the samples, past and future. The dependency goes down with distance and you can ignore it at some point. Yet for good results at 48 kHz you need at least something like 24 samples forward and back. There is no such thing as 'instant' resampling, which is what you would want if it's part of a language. Any resample operator would need to have an 'arbitrary' delay built-in... Ciao, -- FA Laboratorio di Acustica ed Elettroacustica Parma, Italia Lascia la spina, cogli la rosa. _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
