[PD] ipoke~ ?

Roman Haefeli reduzent at gmail.com
Fri Jun 8 15:18:16 CEST 2012


On Mit, 2012-06-06 at 11:07 -0400, Matt Barber wrote:
> > On Wed, 2012-06-06 at 09:53 +0200, Jeppi Jeppi wrote:
> > > Hey,
> > > I wonder whether there is something similar to Max' ipoke~ (an
> > > interpolating buffer~ writer) for Pd. I should need it for some
> > > physical modelling and resampling stuff. Otherwise, I could implement
> > > it myself. It seems only interpolated reading is available (tabread4~
> > > and similar ones), not writing.
> >
> > This somehow reminds of the thread about settable [receive]. Is there
> > really a need for the ability to do interpolated writing? Conceptually,
> > is there any restriction if it is lacking? Can't everything that employs
> > interpolated writing be achieved with interpolated reading as well?
> >
> > Maybe I'm not thinking hard enough...
> >
> > Roman
> >
> 
> If you're using it for modeling an acoustic space, for instance, an
> interpolating write is the proper tool for stationary microphone and
> moving sources. Interpolated read is more like a moving microphone.
> 
> Imagine, for instance, how you would calculate the delay time of a
> sound source moving toward a microphone, from the microphone's point
> of view. Say it's 50ms away right now, and in a second it will be 40ms
> away. The correct model of this is not to set an interpolated variable
> delay read at 50ms right now, and ramp to 40ms over one second - that
> would be looking 50ms into the past (of the source) right now and 40ms
> into the past at 1 second from now, where what you need is to look
> 50ms into the past of the source 50ms from now, and 40ms into the past
> at 1040ms from now - so you'd need to delay the the signal controlling
> the variable delay read itself by the appropriate amount, and that
> signal would have to have the same information in it that you're
> trying to generate with the read in the first place.
> 
> This problem is easily solvable with a variable write (assuming for
> the moment a stationary read) - with a variable write, it is as though
> you're projecting samples into the read's future -- exactly what you
> want.
> 
> You can use the same logic for needing to use variable write into a
> table rather than a delay line.

I see how it seems more logical/simple to model a moving source with a
interpolating buffer writer. However, it's possible to model both cases,
[moving source / stationary mic], [stationary source / moving mic] with
a linear buffer writer and a interpolating buffer reader [1].

[1] http://en.wikipedia.org/wiki/Doppler_effect

Roman




 






More information about the Pd-list mailing list