Object for changing delay time without clicks or pitch artifacts


#1

I've been busy again, this time it's an object for changing delay times without clicks or pitch artifacts.

It needs 1x delay write, 2x delay reads and 2x VCAs.

Only one delay read is used at a time (apart from when fading). When the delay time changes, the new time is assigned to the muted delay read. Then a short cross fade is triggered, and it fades between the previous delay time and the new one. If the delay time changes during the fade, it repeats the whole process. You can adjust the fade time. It's pretty responsive to a dial if the fades are short.

Fun side effects - if you modulate the delay time before the object, with a short fade, you get cool time stretch stuff going on. Also, f you have long fades you can get strange rhythmic stuff as the delays crossfade.

There is also a repitch mode, that does produce pitch artifacts. This is like an intelligent smooth/glide where you can set how long it takes to glide between times. Only one delay read is used for this mode. It has a feature where it tries to glide at a rate that produces octave or fifth artifacts. This works well with abrupt changes, but smoother dial turns still give pretty musical results. I'm not sure why but you get much less pitch artifacts when increasing the delay time and pitch gets lower.

I've made 3 versions - one with everything, one without a pitch mode, and one with a cheaper pitch mode that uses a normal smooth.

Hope it's useful!

Here's a simple help patch:

delay time helper v2.0 upload.axp (20.0 KB)

delay time helper.axp (18.4 KB)


#2

thanks so much for this. : ) will have a play!


#3

Can't wait to try this when I'm home!


#4

So, I realised the object I uploaded was an older version and the octave/fifth stuff wasn't working...
It also needed a little tweak to account for different delay write sizes...

So here's an update. It's the same as above except the octave stuff actually works and it now has a 'size' attribute that should be set to match the size of the delay buffer. If it's set to a different size it'll mess up the octave stuff.

delay time helper v2.0 upload.axp (20.0 KB)