"Soft" bypass

Hi Guys,

Would it be possible to have a bypass that allows spill.

So basically when bypass is engaged just feed the plugin silence and keep it enabled until there is no output from the plugin and then bypass it fully?



This can be done, per-plugin, starting with v1.3.0 by using the lv2:enabled property.
It needs to be done in the plugin though, it’s not something the host can predict - all plugins work differently.

Ah Ok, so basically the plugin passes in to out (and any spill) and the mod-host keeps calling run?

the host always calls run, so that time-based effects do not get out of sync.
if the plugin provides lv2:enabled the host will not zero the output buffers, but rather use them as if the plugin was still doing processing as normal.
the idea is that the plugin becomes responsible for handling bypass state instead of the host.

thanks, got you now.

I was thinking the host was really bypassing the plugin as I notice that the cpu usage drops when plugins are bypassed. Why does this happen?

the host silences the inputs for the “old” bypass method.
some plugins detect that there’s no input signal and do nothing (like the mod pitchshifters), while others have less expensive calculations to do since everything is zero.

Ah ok, got you.

And if you need a workaround you can use an a/b switch where a is the desired plugin that is always on and b is nothing.

1 Like

Cheers, thanks for the tip.