Re: Stopping synthesis cleanly

Chris,

I think it's fine to just cancel everything that's scheduled -- the  
point is to stop all sound.  However the spec should answer the  
question, "does this action actually break any connections in the  
graph?"  In other words, if you invoke this function, then look at  
some AudioNode and see if it's still connected to context.destination,  
what is the result?

If there is no additional state added to AudioContext, I would expect  
the connections to disappear so that the graph reflects the reality of  
everything having stopped.

But there is another way, which is to have some kind of  
AudioContext.active boolean attribute which can be set to false to  
disable all sound output.  This would leave the graph intact, but  
cause the AudioContext to simply ignore it.  I'm not sure if that is a  
good idea, however, because it raises questions about what would  
happen if you set the active flag back to true again.  I guess it  
doesn't really "take out the garbage" in the way that a stop- 
everything sort of function would do.

...joe

On Oct 18, 2010, at 3:04 PM, Chris Rogers wrote:

> Joe, this is simply an omission in the current spec, but it  
> definitely should be there.  Do you think it's sufficient to have a  
> way to "cancel all" scheduled events on the whole context, or do we  
> need to have finer-grained control over specific AudioNodes?
>
> Chris
>
> On Mon, Oct 18, 2010 at 9:57 AM, Joseph Berkovitz  
> <joe@noteflight.com> wrote:
> I'm not sure if I missed it, but in the proposed API I couldn't find  
> a simple way to stop all output and clean out the AudioContext.  In  
> our notation playback demo, I had to manually do bookkeeping on all  
> the nodes connected to the destination and disconnect them in case  
> the user clicked "Stop".  I would imagine that for more complex apps  
> this could become a real pain point.
>
> Is there a good way to do this?  If not, is this a feature that  
> merits addition to the spec?
>
> ... .  .    .       Joe
>
> Joe Berkovitz
> President
> Noteflight LLC
> 160 Sidney St, Cambridge, MA 02139
> phone: +1 978 314 6271
> www.noteflight.com
>
>
>
>
>
>

... .  .    .       Joe

Joe Berkovitz
President
Noteflight LLC
160 Sidney St, Cambridge, MA 02139
phone: +1 978 314 6271
www.noteflight.com

Received on Monday, 18 October 2010 19:15:25 UTC