Paul Davis wrote on Fri, 12-Sep-2003:
Well, I'm
*half* paying attention...
So we're essentially saying that the momentary thing is a trigger that
operates on 0->positive but not positive->0. I must admit I'm not 100% clear
about the randomisable case from the text.
Do we have example plugins for the two cases?
sooperlooper is the example for the momentary case. in that case, your
definition isn't quite correct. a momentary control is one that only
causes something to happen when its value transitions between any two
meaningful values. this means that it needs to be reset to a
meaningless value after being set to any meaningful value. this is
required so that "pressing the button twice" does what the user expects.
its actually slightly more complex than that at the code level.
the more i try to explain this, the less convinced i am that we should
add it. it requires the definition of a meaningless value, for a
start, which will require warping/overloading the meaning of some
other value (e.g. using the default as the meaningless value).
I agree, I do not think a momentary hint would really help in this specialized
case. Sooperlooper will never be a ladspa plugin that any generic
host can use. The better solution to the SL problem is audio-rate
control ports. Then we get sample accurate control, and can easily
specify the "off" value in the plugin's custom semantics.
So the hint we *really* need is the audio-rate control port (or
the control-hinted audio port :)
however, jesse tried to come up with a way of
modelling this kind of
control with existing LADSPA options and couldn't do it. the "requires
reset after every use" is hard to do without it.
The audio rate control port would fix this, but again, only a
custom host could use this plugin, which I'm fine with... apps
to use it are on the way.
jlc