[LAD] Should LV2 Activate() clear MIDI CC parameters?

Fons Adriaensen fons at linuxaudio.org
Tue May 29 16:18:18 UTC 2012

On Tue, May 29, 2012 at 09:48:10AM -0400, Paul Davis wrote:
> the question really is under what circumstances should the host/user call
> deactivate/activate?
> if the host/user has done this, then they should be clear on the
> consequences. you don't call these functions in order to bypass a plugin.
> you call them specifically when there is a need to completely reset the
> state of the plugin.

I've always lookat at activate() as part of the sequence 
required to load a plugin and make it work, not as something
ever explicitly done by the user. If a plugin needs a 'Reset'
(some do, it depends on the particular effect), it should have
a Reset button.

Since in LV2 activate() and deactivate() do not affect port
connections, I'd say they should not reset any controller
values that the plugin gets from MIDI input. The controller
remains connected, but it doesn't know it should resend its
current value if the plugin would reset it.

AFAICS, Ardour's 'activate' and 'deactivate' (at least for
LADSPA plugins) do not call those functions, they just change
the signal routing. Which looks to me as the right thing.

Another questions if a host bypasses a plugin, should it still
provide input signals to the plugin and run its process() ? 

I tend to say yes - it's what you usually get on real mixers
when patching an outboard processor, and it can be useful
in some cases when working 'life', e.g. to set up a dynamics
processor (which requires input) before inserting it.



A world of exhaustive, reliable metadata would be an utopia.
It's also a pipe-dream, founded on self-delusion, nerd hubris
and hysterically inflated market opportunities. (Cory Doctorow)

More information about the Linux-audio-dev mailing list