That's exactly what I would also suggest!
The linear interpolation is used in commercial products more than one could 
think.

> -----Messaggio originale-----
> Da: music-dsp-boun...@music.columbia.edu [mailto:music-dsp-
> boun...@music.columbia.edu] Per conto di Nigel Redmon
> Inviato: sabato 21 marzo 2015 00:07
> A: A discussion list for music-related DSP
> Oggetto: Re: [music-dsp] Glitch/Alias free modulated delay
> 
> Suggestion:
> 
> Make it work with linear interpolation first.
> 
> The implementation is extremely simple—it won’t take much of your time to
> try it—and you’ll eliminate most of the problems (buffer wrap, etc.) without
> getting confused about whether your interpolation scheme is the fault.
> 
> Plus, you’ll have a baseline to compare higher-order improvements with.
> Linear interpolation sounds better than most people would guess, with
> typical musical input (musical interments usually have weaker upper
> harmonics), so you’ll have a better idea of whether you’re getting your
> money’s worth with more elaborate methods.
> 
> 
> 
> > On Mar 20, 2015, at 2:10 PM, Nuno Santos <nunosan...@imaginando.pt>
> wrote:
> >
> >
> >> On 20 Mar 2015, at 18:58, Alan Wolfe <alan.wo...@gmail.com> wrote:
> >>
> >> One thing to watch out for is to make sure you are not looking
> >> backwards AND forwards in time, but only looking BACK in time.
> >
> > This is how I calculate the read index:
> >
> > float t=_writeIndex-_time-_modulation*_modulationRange;
> >
> > if(t<0)
> >    t+=_size;
> >
> >>
> >> When you say you have an LFO going from -1 to 1 that makes me think
> >> you might be going FORWARD in the buffer as well as backwards, which
> >> would definitely cause audible problems.
> >
> > I have tried to rescale the LFO to fit between 0 and 1 and it doing the same
> artefacts:
> >
> >
> > // this where delay gets updated with lfo float lfo =
> > (_lfo.step()-1.f)/2.f;
> >
> > delay.setModulation(lfo);
> >
> >>
> >> your LFO really should go between -1 and 0, you then multiply that
> >> value by the number of samples in your buffer (minus 1 if needed,
> >> depending on your design and timing in your code), and then subtract
> >> that value from your "write index" into the buffer, making sure to
> >> handle the case of going negative, where your subtracted offset is
> >> greater than your current write index.
> >
> > I even tried to change from
> >
> > _time+_modulation*_modulationRange
> >
> > to
> >
> > _time-_modulation*_modulationRange
> >
> > Exactly the same issues….
> >
> > :/
> 
> --
> dupswapdrop -- the music-dsp mailing list and website:
> subscription info, FAQ, source code archive, list archive, book reviews, dsp
> links http://music.columbia.edu/cmc/music-dsp
> http://music.columbia.edu/mailman/listinfo/music-dsp

--
dupswapdrop -- the music-dsp mailing list and website:
subscription info, FAQ, source code archive, list archive, book reviews, dsp 
links
http://music.columbia.edu/cmc/music-dsp
http://music.columbia.edu/mailman/listinfo/music-dsp

Reply via email to