- From: Chris Wilson <cwilso@google.com>
- Date: Mon, 15 Dec 2014 08:04:02 -0800
- To: Oleg Beletski <o.beletski@samsung.com>
- Cc: "public-audio@w3c.org" <public-audio@w3c.org>
- Message-ID: <CAJK2wqVgCNbuWUe4zKO4aNjfcDYYSqkjoFhM5hadF7TcjK=3iQ@mail.gmail.com>
Good catch. Could you add this as an issue on the repo? https://github.com/WebAudio/web-audio-api/issues. On Fri, Dec 12, 2014 at 9:36 AM, Oleg Beletski <o.beletski@samsung.com> wrote: > Hello, > > I was exploring lately how to enable automatic suspend/resume > functionality in chromium AudioContext implementation for the case if there > are no active audio sources present in the graph. I practically got > implementation working for the case similar to the one that is implemented > by Gecko ( > https://github.com/WebAudio/web-audio-api/issues/317#issuecomment-42248626). > Because of that work I am following what is happening in development of WEB > Audio specification with introduction of suspend/resume/close states. > > I noticed couple of things in the specification that could be clarified > better. > > 1. CurrentTime attribute of AudioContext > <quote> > currentTime of type double, readonly > This is a time in seconds which starts at zero when the context is created > and increases in real-time. All scheduled times are relative to it. This is > not a "transport" time which can be started, paused, and re-positioned. It > is always moving forward. A GarageBand-like timeline transport system can > be very easily built on top of this (in JavaScript). This time corresponds > to an ever-increasing hardware timestamp > </quote> > > I understand that the latest draft of the specification actually enables > us to pause and resume timeline of AudioContext and the transport timeline > that is behind it. Do I understand correctly that currentTime is not > progressing in suspended AudioContext? If that is the case, it would be > good to reflect that in the description of the currentTime attribute. > > > 2. suspend/resume methods of AudioContext > <quote> > "Suspends(resumes) the progression of time in the audio context" > </quote> > > Would be good to use the same style of referencing to the timeline of > AudioContext as in the other parts of the spec - "same time coordinate > system as AudioContext's currentTime" to avoid potential confusion with the > "transport" time. > > > Implementation that I was working on is actually stopping that transport > time of AudioDestination node while keeping AudioContext's currentTime ever > increasing in the real time in way that is totally transparent to the users > of WEB Audio API by switching to system timer. > > Best wishes, > Oleg > -- > Oleg Beletski > Principal Engineer > Samsung Electronics R&D, Finland, Espoo > o.beletski@samsung.com > > > >
Received on Monday, 15 December 2014 16:04:33 UTC