On Sat, Feb 08, 2003 at 03:06:40 +0100, David Olofson wrote:
On Saturday 08 February 2003 02.17, Tim Hockin wrote:
[...]
Assuming we really want to allow soft-limits
(which I just don't
get), we can just say that if you want a hardlimit, constrain it
internally.
Yeah.
As to soft limits, I think the main point is to relieve the plugin
author of the task of figuring out the absolute minimum and maximum
control values that could possibly generate any interesting results,
so he/she doesn't have to release a modified plugin under a different
major version number later on, just to extent some control ranges.
If you can't decide on the "useful" range, just throw something
reasonable into the range hints, and clamp to some bigger range that
you know is technically safe for the algorithm. If users want to look
for cool effects outside the "official" ranges, they can, and
although plugins might produce evil noises (which some actually might
find useful), they won't crash or anything like that.
This is exactly what I do in LADSPA and it works quite well. Many plugins
make interesting noises if you give way out of range controls.
I'm all
for optimizations, but really, this is a MICRO MICRO MICRO
MICRO optimization. SOMEONE SOMEWHERE is going to do a conditional
and constrain. Be it the host or the plugin.
Yes. The only exceptions would be when you have a hard limited output
that's within the range of a hard limited input, and when you have
prerecorded data. However, the latter case only applies if you assume
that recorded data will be destructively processed whenever you
connect something. *heh*
Many controls dont need to be clamped at all, it might do something odd if
you go outside the ranges, but it wont crash.
- Steve