Re: [LAU] LV2 control-ports and midi binding -- was Re: [ANN] setBfree v0.8

From: Rui Nuno Capela <rncbc@email-addr-hidden>
Date: Tue Jun 23 2015 - 21:34:48 EEST

On 06/23/2015 05:59 PM, Filipe Coelho wrote:
> On 06/23/2015 06:46 PM, Rui Nuno Capela wrote:
>> i still think that a simple standard defined message for a plugin to
>> tell its host the following:
>>
>> "-- i've made some changes onto my own internal state, including
>> some, if not all of (my) parameters (aka. input control ports), so
>> please scrap all your current view state of me from this moment on and
>> get it all re-freshened up, will you? btw. you can also opt to set
>> your session dirty flag, as for saving my (partial new) state later on."
> Please don't.
>
> Plugin ports are only valid during run, which means the plugin can only
> send such message during run.
> If you have a host like ardour or carla that splits the processing into
> smaller blocks this will get very ugly.
>

i'm afraid i don't follow you there

the moments when a plugin would make such kind of changes are rather
eventual, in response to some sparse, special or rare external stimuli,
be that MIDI input or else. sure no one expects an eg.MIDI
program_change to be sample-accurate or real-time safe, would s/he?

fwiw. yours truly qtractor is also a lv2 host and it suffers from the
same, although to a lesser extent perhaps: it always honours
dereferencing of a plugin's input port value at all times, especially
during run ie. a plugin's parameter value takes precedence or priority
over eg. automation, which in fact is effective only on playback start,
rolling and stop times. well, on play-head relocation too. nb. under
qtractor, a plugin is always in run state, provided it's activated.

> Sending some dirty flag to the host is fine. Attempting to change some
> input port value is not.
>
>
> This is simple.
> If you have some internal data that the plugin needs to modify during
> run - don't export that data to the host.
>

no, i'm sure it is NOT that simple

so, you're there saying that a lv2 plugin's state must be completely
isolated and entirely independent from its own parameters or input
control ports?

i'd say that's an utter complication from a plugin author's pov. i'm
afraid it sounds like lv2 puritanism, which i won't bother to discuss
here any further. so sorry.

byee.

-- 
rncbc aka. Rui Nuno Capela
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Wed Jun 24 00:15:02 2015

This archive was generated by hypermail 2.1.8 : Wed Jun 24 2015 - 00:15:02 EEST