anthonyalfimov / Stable-Delay

AU, VST3. A WIP delay/chorus/flanger plugin
GNU General Public License v3.0
3 stars 1 forks source link

Clear delay buffer on transport start #43

Open anthonyalfimov opened 3 years ago

anthonyalfimov commented 3 years ago

Currently, stopping the transport or moving the playhead position during playback does not clear the delay buffer. This means that if the buffer is not empty when playback is restarted, the old contents of the buffer will be output.

This can be an undesirable effect, and all delay plugins I tested clear the delay buffer when transport stops or the playhead jumps to a new position during playback.

anthonyalfimov commented 3 years ago

releaseResources() should be clearing the delay buffer, so it appears that host doesn't call it under these conditions.

anthonyalfimov commented 3 years ago

It makes more sense to clear the buffer on transport start to make sure that the tail may persist. Some DAWs, e.g. Reaper, don't cut the tail off on transport stop.

https://forum.juce.com/t/clearing-the-buffer-of-a-delay-reverb-on-playback/24628

anthonyalfimov commented 1 year ago

Clearing the delay buffer on transport start could be an option exposed to the user.