[LAD] LADSPA extension for periodic control values?

Stefano D'Angelo zanga.mail at gmail.com
Fri Jun 19 19:23:14 UTC 2009


2009/6/19 Stefan Kost <ensonic at hora-obscura.de>:
> Stefano D'Angelo schrieb:
>> 2009/6/13 Jörn Nettingsmeier <nettings at folkwang-hochschule.de>:
>>> 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.
>
> I disagree. I would not mind adding support for more hints to the gstreamer
> ladspa wrapper. Its not a lot of work and its good to have that now even if lv2
> takes over in the long run.
>
> The other think I'd like to have is hints for audio-port channel
> grouping/mapping. That is describe that a port is the left-channel of stereo
> pair named <xyz>, Even if this goes to the rdf.
>
> Stefan

Stefan, once again, I originally misunderstood the post by Jorn
thinking he wanted to add that stuff outside of the LADSPA header, the
discussion went and is still going on.

Stefano



More information about the Linux-audio-dev mailing list