- From: Arnau Julia <Arnau.Julia@ircam.fr>
- Date: Tue, 27 May 2014 17:29:54 +0200
- To: Joseph Berkovitz <joe@noteflight.com>
- Cc: "public-audio-dev@w3.org" <public-audio-dev@w3.org>
- Message-Id: <361CF9A7-EEDC-4654-AA34-7A7EF5D03741@ircam.fr>
Hi Joseph, Thanks for your answer. I really know how to start two sources at specific time. It is more that I would like to know how it works because I didn't find nothing about that in the specification. :-) Thank you, Arnau On 27 mai 2014, at 17:17, Joseph Berkovitz <joe@noteflight.com> wrote: > Hi Julia, > > Setting aside the part of your post that relates to the rate at which currentTime is updated, I wanted to note that it is easy to start two sources at a specific time: > > On May 27, 2014, at 10:06 AM, Arnau Julia <Arnau.Julia@ircam.fr> wrote: >> Therefore, as I understand, if I want to start two sources at a specific time I can't do something like this, >> >> function start(){ >> source1.start(audioContext.currentTime+1); >> source2.start(audioContext.currentTime+1); >> } >> >> because it's not possible to guarantee that the currentTime for these two instructions will be the same. > > > You could, however, do this, if you wanted to be completely sure: > > function start(){ > var t = audioContext.currentTime+1; > source1.start(t); > source2.start(t); > } > > Overall I don’t think it is a good idea (even if it were possible) to rely on sample-accurate ("a-rate") updates of the currentTime clock in the main thread, because there is always some unpredictability in the thread’s timing, and it’s likely to be large relative to the duration of a sample frame. The main browser thread can yield CPU time to other interrupt-driven processes (including things outside the browser) at some point between acquiring currentTime’s value and employing that value for scheduling purposes. > > . . . . . ...Joe > > Joe Berkovitz > President > > Noteflight LLC > Boston, Mass. > phone: +1 978 314 6271 > www.noteflight.com > "Your music, everywhere" >
Received on Tuesday, 27 May 2014 15:30:28 UTC