[LV2] lv2:relation
Stefan Kersten
sk at k-hornz.de
Thu Mar 1 03:38:42 PST 2012
On 2/29/12 12:54 AM, David Robillard wrote:
>>> "Parameter" =
>>> * Identified by URI, has a "value" of any type (one per URI per plugin)
>>> * Is a property the plugin "understands"
>>> * Likely to be saved in plugin state
>>> * Can get/set by sending a message
>>> * Can be expressed in a control port
>>
>> so this would not necessarily be tied to a port?
>
> Right. Mainly, you could set/get one via messages (via an event port)
> as well. Among other things, this means you could create them
> dynamically. I like that this is tied in with ports so the abstract
> concept of a "parameter" is not tied to the logistics of ports or
> whatever else.
i have a related problem (i'm not very fluid yet with RDF): for control
of my audio engine i am thinking about moving from OSC to something more
structured and flexible such as LV2 atoms and messages.
let's say my engine maintains a tree of nodes where the leaf nodes
correspond to instances of LV2 plugins. nodes are created and
manipulated by a client via asynchronous messages and identified via
unique integer ids.
now if i want to set the value of a control port, i could use a message
like this:
[
a msg:Set ;
msg:subject [ a myEngine:NodeId ; myEngine:id 12345 ] ;
msg:body [
uri:parameter 3.14 ;
] ;
]
in other words, the information of where to send the message (the plugin
instance with the corresponding node id) should be contained in the
message itself. is this a viable use of msg:subject? i don't really want
to make the node ids proper URIs. or would it be better to put the
message in some higher level container that contains the information
about where the message should go?
thanks,
<sk>
More information about the Devel
mailing list