- From: Matt Grounds <matt.grounds@gmail.com>
- Date: Tue, 3 Jul 2012 08:05:16 -0700
- To: public-audio@w3.org
- Cc: Ray Bellis <ray@bellis.me.uk>
Hi, I wanted to add my two cents to a topic that was already raised by Ray Bellis, the fact that there is no fine-grained disconnect function provided by the AudioNode interface. I have been working with a few others on a similar kind of project, a visual synthesizer project with modular routing. I realize that supporting such web apps is maybe not the main goal of this API, but I would argue that this kind of modular system is a good testbed for evaluating how well different nodes work together and assessing overall performance. I find myself at the point where I need to write a wrapper class to provide the missing disconnect function, by calling the disconnect() function and then iterating through everything that should have stayed connected and calling connect() for each one. The interface as it stands does not feel symmetric. There are connect functions to connect to specific audio inputs and specific AudioParams, but there are no similarly specific disconnect functions to match them - there is only a method that behaves more like disconnectAll(). This makes it very hard to implement "undo" operations, and doesn't work well with the flexible fan out / fan in approach taken by the API. On a more positive note, I've been impressed with the amount which could be accomplished in Chrome Beta even within some of the limitations of the API, so keep up the good work guys! Matt Grounds
Received on Wednesday, 4 July 2012 06:57:05 UTC