Hi, I think its time for me to go on about the lack of reference amplitudes in LADSPA again. This still bites people on a regular basis.
In a nutshell I think that there should be a reference 0dB (LADSPA) level, defined as 1.0f. <rant> That doesn't meant that abs(signal) can't go above 1.0f, just as it doesn't meant that analogue signals can't go above 0dB in analogue hardware. Its just a reference level. It matters because, as it is, some hosts (notably applyplugin) send signals in that are at 32768.0f, which renders any waveshaping or dynamics processing code useless*, resulting in heavy distortion or silence. Reasons why its a good idea: o ...reasons given above o It is confusing for newbies writing plugins, who don't know why thier trivial dsp code doens't work in applyplugin o Changing any existing hosts that don't use 1.0 is really easy (I allready have a patch for applyplugin) o It doesn't require modification to the api, just a note in the spec. o Compatibility with VST, jmax, matlab... and 99% of all example dsp code o I will shut up about it Reasons why its a bad idea: o Requires a new package of the LADSPA SDK (with note and patched applyplugin) * Unless you ask the user what the 0dB level for thier hosts is, but how the hell are they going to know that? </rant> - Steve
