- From: Olivier Thereaux <notifications@github.com>
- Date: Wed, 11 Sep 2013 07:29:22 -0700
- To: WebAudio/web-audio-api <web-audio-api@noreply.github.com>
- Message-ID: <WebAudio/web-audio-api/issues/6/24244071@github.com>
> [Original comment](https://www.w3.org/Bugs/Public/show_bug.cgi?id=17793#0) by Chris Rogers on W3C Bugzilla. Mon, 30 Jul 2012 20:16:50 GMT (In reply to comment #0) > (Summary of email conversation in list) > > There is currently no way to disconnect node A's connection to node B without > disconnecting all connections from node A to other nodes. This makes it > impossible to disconnect node B from the graph without potential side effects, > as you have to: > > - call disconnect() on node A (which disconnects all its outputs) > - reconnect every connection that node A used to have, EXCEPT the connection to > node B. > > Not only is this cumbersome, it will be problematic in the future when we solve > the related issue of unconnected streams - which is currently exhibiting > incorrect behavior in Chrome (it pauses the audio stream), but is > underspecified in the spec today. (filing separate bug). Disconnecting then > reconnecting would have to have no side effects. (It works okay today, but not > ideal - can click.) > > Recommended solution: > - there should be a way to remove a single connection (by supplying the > destination node to be disconnected, since there can only be one connection to > a given destination node [tested]). > > E.g.: the IDL for disconnect should read: > > void disconnect(in [Optional] AudioNode destination, in [Optional] > unsigned long output = 0) > raises(DOMException); > > this lets us keep most compatibility - node.disconnect() will still remove all > connections. I agree we need to extend disconnect() with more optional parameters to allow disconnecting specific connections. I think we'll also need to add an "input" parameter similar to the connect() method to be able to say *which* specific input to disconnect: void disconnect(in AudioNode destination, in [Optional] unsigned long output = 0, in [Optional] unsigned long input = 0) raises(DOMException); This would make the API look the same as connect(), and allow disconnecting an exact connection. --- Reply to this email directly or view it on GitHub: https://github.com/WebAudio/web-audio-api/issues/6#issuecomment-24244071
Received on Wednesday, 11 September 2013 14:31:54 UTC