W3C home > Mailing lists > Public > public-audio@w3.org > April to June 2012

Re: Audio-ISSUE-12 (JLoop start/stop points) [Web Audio API]

From: Olli Pettay <Olli.Pettay@helsinki.fi>
Date: Thu, 24 May 2012 00:22:05 +0300
Message-ID: <4FBD54FD.7030401@helsinki.fi>
To: Chris Wilson <cwilso@google.com>
CC: public-audio@w3.org
On 05/24/2012 12:11 AM, Chris Wilson wrote:
> You need a W3C account,
Which I've had for years ;)

> but I'm not sure you need to be a Member, per se - http://www.w3.org/Help/Account/ says you can request a public account.
Last time I tried, last week or so, I couldn't file a bug
using Audio WG tracker.

-Olli


>
> I think the main reason the W3C tends to use tracker for issues is that it's integrated with their RRSAgent system for meetings, so it's trivially
> easy to create issues and action items during an IRC chat (as you could see during the meeting today).
>
>
> On Wed, May 23, 2012 at 2:07 PM, Olli Pettay <Olli.Pettay@helsinki.fi <mailto:Olli.Pettay@helsinki.fi>> wrote:
>
>     On 05/23/2012 11:47 PM, Chris Rogers wrote:
>
>         Hi Joe, could you please add this as a comment in the ISSUE.  Otherwise, it's going to be very difficult for me to track.
>
>
>     Btw, as a generic comment, why does the WG use tracker which is limited to WG members only?
>     I for example can't file any bugs. Many other WGs use bugzilla[1]
>
>     -Olli
>
>     [1] https://www.w3.org/Bugs/__Public/ <https://www.w3.org/Bugs/Public/>
>
>
>
>         Thanks!
>         Chris
>
>
>         On Wed, May 23, 2012 at 12:42 PM, Joseph Berkovitz <joe@noteflight.com <mailto:joe@noteflight.com> <mailto:joe@noteflight.com
>         <mailto:joe@noteflight.com>>> wrote:
>
>             Chris,
>
>             I owe you a bit more detail on the loop points issue and the question of whole-sample looping.
>
>             In my proposal I had suggested that loopStart/loopEnd be set to 0 and the sample length in order to loop the entire sample (iff the "loop"
>             attribute is set on the AudioBufferSourceNode).
>
>             After some thought I think that while this behavior obviously makes sense when loopEnd is the sample length, it would be also advantageous to
>             define that whole-sample-looping occurs when loopStart == 0 and loopEnd == 0, and that these in fact be those attributes' default values. This
>             provides a guaranteed way to achieve the whole-sample-looping behavior regardless of what underlying AudioBuffer is set into the
>             AudioBufferSourceNode.
>
>             ...Joe
>
>             On Apr 30, 2012, at 12:31 PM, Audio Working Group Issue Tracker wrote:
>
>                 Audio-ISSUE-12 (Joe Berkovitz): Loop start/stop points [Web Audio API]
>
>             http://www.w3.org/2011/audio/__track/issues/12 <http://www.w3.org/2011/audio/track/issues/12>
>
>                 Raised by: Joe Berkovitz
>                 On product: Web Audio API
>
>                 Hi folks,
>
>                 At the F2F in January we discussed the need for a more powerful looping construct in AudioBufferSourceNode than simply "loop the whole
>             sound",
>                 in order to support UC6 (wavetable synthesis) and other user cases.  In particular, basic wavetable synths require the ability to
>             start an audio
>                 buffer playing and then have it enter a loop in some arbitrary subrange of that sample [m..n].  Trying to achieve this via explicit
>             scheduling
>                 of various subranges of a sample by calling noteGrainOn() feels unworkable since sample-accurate transitions from one subrange to
>             another could
>                 not be achieved in this way -- and at any rate, it would be very unwieldy. The idea is that noteOn() should perform seamless
>             repetition of the
>                 looped subrange of a sample as an integral part of its behavior.
>
>                 Somehow this idea has been lost, probably due to the coarse-grain definition of looping in the UC document as simply "Playing /
>             Looping sources
>                 of audio". However it's an essential requirement for wavetable synthesis and my concern is that games and synths will be seriously
>             compromised
>                 without it.
>
>                 I am proposing that there be separate loopStart and loopEnd properties of AudioBufferSourceNode that are sample-accurate.  If
>             respectively set
>                 to 0 and the length of the sample, these will cause the entire sample to be looped.  If set to offsets M and N, these will cause the
>             sample to
>                 be played by noteOn() and noteGrainOn() as if the sample consisted of contiguous subranges [0..M-1], [M..N], [M..N], ...
>
>                 Thanks!
>
>                 ...Joe
>
>
>
>
>             ... .  .    .       Joe
>
>             *Joe Berkovitz*
>             President
>
>             *Noteflight LLC*
>
>             84 Hamilton St, Cambridge, MA 02139
>             phone: +1 978 314 6271 <tel:%2B1%20978%20314%206271> <tel:%2B1%20978%20314%206271>
>         www.noteflight.com <http://www.noteflight.com> <http://www.noteflight.com>
>
>
>
>
>
>
Received on Wednesday, 23 May 2012 21:22:31 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 23 May 2012 21:22:32 GMT