W3C home > Mailing lists > Public > public-audio@w3.org > July to September 2012

Re: [Bug 17793] New: AudioNode.disconnect() needs to be able to disconnect only one connection

From: Chris Wilson <cwilso@google.com>
Date: Fri, 20 Jul 2012 12:59:04 -0700
Message-ID: <CAJK2wqV99_ME21zrTPjzrUX=nziPWLaZ9E32ePhH4xrkTbSezg@mail.gmail.com>
To: Peter van der Noord <peterdunord@gmail.com>
Cc: "public-audio@w3.org" <public-audio@w3.org>
On Fri, Jul 20, 2012 at 11:30 AM, Peter van der Noord <peterdunord@gmail.com
> wrote:

> Op 20 jul. 2012 om 19:54 heeft Chris Wilson <cwilso@google.com> het
> volgende geschreven:
>
> Yes, EXCEPT connect() is one-way, and disconnect is currently the same.  I
> do not think nodeA.disconnect() should disconnect inputs into nodeA.  So it
> would be:
> nodeA.disconnect() -> removes all outbound connections from nodeA's
>
> Hmm, we're clearly not agreeing on this. I know i'm repeating myself, but
> i think it's very strange that if you say disconnect to a node, that it
> disconnects its outputs. I could live with it if there *was* a way to
> simply disconnect a node (everything connected to it).
>

It's just being symmetric with connect() (which creates an outbound
connection).


> *Note that the scenarios you were talking about before - specific gate
> inputs, e.g. - would likely be exposed as separately-named parameters on
> the nodes, not just as numbered inputs - the same way the named AudioParams
> like .gain are exposed today.  The "inputs" and "outputs" really are
> channels, to me.
>
> I disagree, i will still use them a lot - although me being the only one
> is still not much, i admit ;)
>
> I know that i can use params (instead of an input), but there's no way to
> do something similar with an output. And since i will be using multiple
> outputs, i will probably not use param-instead-of-inputs, because that will
> add unnecessary complexity.
>

Actually, you easily could - there just aren't examples of this today.  You
could easily expose AudioNode members of an AudioNode:
interface ClockMultiplier : AudioNode {
   AudioNode TwoX;
   AudioNode FourX;
}

then you call .connect on those members.


> But, the thing that struck me when i read your *note... how do i even
> disconnect something that's connected to a param?
>

A good point; we'd need a method that takes an AudioParam as well.  At
least AudioParams don't have multiple inputs.

-C
Received on Friday, 20 July 2012 19:59:33 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 20 July 2012 19:59:34 GMT