2009/6/13 Jörn Nettingsmeier <[email protected]>: > hi everyone! > > > sorry if this has been discussed before, but i didn't find anything in > the archives... > consider the case of periodic control values of LADSPA plugins, for > instance the azimuth in a horizontal panner or the phase shift in a phaser. > currently, they are usually marked as BOUNDED_BELOW and BOUNDED_ABOVE, > but the host has no way of knowing that the upper bound is next to the > lower bound, so that it can chose the shortest path to the next value > when interpolating automation control points. > > take ardour, for example: if i want to spin a source 360 degrees, i have > to start at 0, set a control point at 180, set another control point at > the exact next sample to -180 and then onwards. if there is even a > single sample between the control points, the interpolation will cause > the image to jump in weird ways, because it doesn't know that 180 == -180. > > does it make sense to add a new hint to LADSPA, something like > LADSPA_HINT_PERIODIC? it would mandate LADSPA_HINT_BOUNDED_BELOW and > LADSPA_HINT_BOUNDED_ABOVE as well as the respective port range hints, > *and* imply that LowerBound is equivalent to UpperBound in the port > range hint structure. > > this would enable hosts to do the Right Thing(tm).
Hi, I think it makes no sense nowadays to do something like that, for two reasons: * LADSPA is old, hence old LADSPA hosts will not support that and new/maintained ones are not likely to support that, since many are focusing on newer APIs; * An LV2 extension would allow you to do that quite easily in LV2, which is probably preferable these days. That said, I can already hear people who disagree with me shouting and screaming. Stefano _______________________________________________ Linux-audio-dev mailing list [email protected] http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
