Re: [LAD] Lv2 port replication [was Re: the role of lv2 extensions]

From: james morris <james@email-addr-hidden-art.net>
Date: Thu Aug 13 2009 - 12:08:09 EEST

On 12/8/2009, "David Robillard" <dave@email-addr-hidden> wrote:

>On Thu, 2009-08-13 at 00:05 +0100, james morris wrote:
>> On 12/8/2009, "David Robillard" <dave@email-addr-hidden> wrote:
>>
>> >On Wed, 2009-08-12 at 23:39 +0100, james morris wrote:
>> >> On 12/8/2009, "Steve Harris" <steve@email-addr-hidden> wrote:
>> >>
>> >> >On 12 Aug 2009, at 23:20, David Robillard wrote:
>> >> >>
>> >> >> Allow one group of ports to have either no replication, or the same
>> >> >> replication count as another group of ports. Obvious example being,
>> >> >> controls tend to stick to 1, audio tends to get replicated, but we may
>> >> >> want to replicate the controls to match audio. So, a single plugin
>> >> >> could do all of the above cases in a single instance, if the author
>> >> >> wants to do it that way.
>> >> >
>> >> >That makes sense to me.
>> >> >
>> >>
>> >> that's what i thought what i said implied [scratches head].
>> >
>> >.... I don't think "or ganging the control ports" really quite conveys
>> >the idea entirely ;)
>>
>> Don't be daft! I'll admit my LP filter example was less than concise.
>>
>> >> >> Allow one group of ports to have either no replication, or the same
>> >> >> replication count as another group of ports. Obvious example being,
>>
>> Which group of ports? The output group from the previous plugin in the
>> chain? Why not just the number of channels? That's all that's needed
>> for the simple case I'm talking about.
>
>So the guy claiming he described the solution already is still working
>on grasping the problem? :P </daft>

I said previously I was fairly sure port replication should be a property
of a port. The LP filter example had one cutoff port for two channels,
and asked what if we want two cutoff ports. This implies that the cutoff
port can have no replication or the same replication as the number of
channels processed. It's so obvious that different ports within the
same plugin MUST have the same replication count or no replication I
never thought to spell it out.

>Other plugins are /way/ outside of scope. What is "the number of
>channels"? Just some abstract parameter, we're designing a plugin API

I was trying to point to the question of: Why base the replication of a
control port on the replication of the audio ports? The audio port
replication is based on the number of channels, so base the replication
of the control port (if it is to be replicated) on that also. The plugin
will be informed of the number of channels by the host anyway.

>here, not a modular synth's internals. As described in the above quoted
>email, the problem is sometimes you want the audio ports on plugin P
>replicated and the control ports on plugin P singular, but other times
>you want the control ports on plugin P replicated to match the audio
>ports. Anything to do with other plugins is well within "host's
>problem" territory.

So we have two new port properties: one to say this port should always be
replicated - audio ports would use this - and another to say that this
port can be replicated but does not have to be. The matching of counts
is implied because there's no sane reason why port replication counts
would not match.

James.
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
Received on Thu Aug 13 16:15:02 2009

This archive was generated by hypermail 2.1.8 : Thu Aug 13 2009 - 16:15:02 EEST