[LV2] Fixed Buffersize Extension Question

hermann meyer brummer- at web.de
Sat Jan 26 22:43:10 PST 2013


Am 26.01.2013 23:18, schrieb David Robillard:
> On Sat, 2013-01-26 at 22:21 +0100, Georg Holzmann wrote:
>> Hallo list!
>>
>> I am developing an LV2 plugin which requires a fixed buffersize (because
>> of many internal buffers, which are not so easy to rewrite).
>> So I tried the buffer size extension:
>> http://lv2plug.in/ns/ext/buf-size/
>>
>> However, does this mean, that any host which doesn't support this
>> extension won't be able to load the plugin?
>> At least I was not able to load it anymore ...
>> If yes, which hosts support this extension already?
> If you list a feature as required, then yes, the host may not load the
> plugin.  That is the point of a required feature, really, if the plugin
> *requires* a feature, then it can not work when the feature is present.
>
> You can also list a feature as optional, which lets the host know the
> plugin supports it, but the plugin can fall back and work correctly
> without the feature available.
>
>> Or is there any other way to get something similar, without breaking
>> compatibility with all simple LV2 hosts?
>> I guess most of the hosts use a constant buffersize also if they don't
>> support this extension?
> The feature is relatively new, so it is not very widely supported.  It
> is (mostly kinda sorta) supported inherently by anything that runs
> plugins directly on Jack buffers, but it's tricky for hosts that split
> cycles for timing reasons.
>
> It sounds like all you actually need is *maximum* block length?  This is
> much simpler to support, virtually all hosts should be able to (*fixed*
> block length is difficult and controversial).  I know that Jalv, Ardour
> 3, and Ingen currently do, not sure about others[1].  Implementing it is
> a simple matter of passing the required information to the plugins
> instantiate method, so adding support should be easy.
>
> I recommend relying on maxBlockLength if you need it, and encouraging
> hosts to implement support.  It is crucial information for many things.
>
> If you really do need fixed, this will probably limit the number of
> hosts that will support your plugin quite a bit, at least for the time
> being.
>
> Cheers,
>
> -dr
>
> [1] We really need a compatibility matrix...

[1] the latest release of qtractor (0.5.7) support the buffersize 
extension as well.

greets



More information about the Devel mailing list