Perhaps we should include a flag on LADSPA plugins indicating that the plugin is non-linear and therefore cares about input level, plus a recommendation that such plugins expect peak amplitude around 1. This gives the host the option to renormalise its signal to 1 on input and output from whatever representation it uses and a way to know when this should be done. I'm inclined to modify applyplugin with this in mind. Folk who've written linear plugins will not notice the difference, folk who've written nonlinear ones may be in a bit of trouble. Also, has anyone written plugins that map the floats directly to shorts before processing? Is there much out there that couldn't be changed easily?
I don't think this should be much more than a recommendation - some plugins inevitably mess around with peak levels and forcing plugins to keep to these levels (a) breaks relative scaling when processing two channels of stereo in parallel and (b) is very artificial and (c) inefficient - a chain of linear plugins may mess around with signal amplitude quite badly and it'll be much more efficient to renormalise at one point in the chain rather than on each plugin. --Richard
