On Fri, Jun 15, 2007 at 12:01:10PM +0200, Tim Goetze wrote:
1. the first
sweep has to start from defaults,
2. or it has to be replaced by a jump to the current control values.
For 2. keep a boolean indicating that the current control values
are valid and can be used as the starting point for interpolation.
Reset in activate(), set in each process().
I've thought of 2. too but would prefer a host side solution because
There is no host side solution within the LADSPA spec.
* you only have to do it once per host, not once per
plugin
Hosts shouldn't be burdened with keeping what is essentially
internal processing state of a plugin. The matter we are
discussing is just the simplest possible case of a something
that could be much more complex, depending on what's inside
the plugin. Since that complexity is created by the plugin
and what it tries to do, and there are no limits to it, it
has to be handled at that side. What is required is an API
that supports more complex plugin behavior - in this case
a call that would reset the flag and force a jump to the
current control values at the start of the next run(). (*).
* it keeps the plugin code simple
* it is more efficient
You must be kidding :-)
(*) [OT] After the latest LV2 thread in which I participated,
I've stopped suggesting such simple things, becaues the reaction
is always the same - it's too complicated for the plugin developer,
it's inefficient, etc. while this is in general not true - e.g.
the call suggested above can just be ignored if you don't
interpolate control values. Anyway I won't even try again,
and I'm currently developing my own plugin API.
--
FA
Follie! Follie! Delirio vano รจ questo !