--- a/webaudio/specification.html Sat Apr 27 17:44:17 2013 -0400
+++ b/webaudio/specification.html Mon Apr 29 16:33:10 2013 -0700
@@ -2185,20 +2185,15 @@
<h2 id="AudioBufferSourceNode">4.10. The AudioBufferSourceNode Interface</h2>
<p>This interface represents an audio source from an in-memory audio asset in
-an <code>AudioBuffer</code>. It generally will be used for short audio assets
+an <code>AudioBuffer</code>. It is useful for playing short audio assets
which require a high degree of scheduling flexibility (can playback in
-rhythmically perfect ways). The playback state of an AudioBufferSourceNode goes
-through distinct stages during its lifetime in this order: UNSCHEDULED_STATE,
-SCHEDULED_STATE, PLAYING_STATE, FINISHED_STATE. The start() method causes a transition from the
-UNSCHEDULED_STATE to SCHEDULED_STATE. Depending on the time argument passed to
-start(), a transition is made from the SCHEDULED_STATE to PLAYING_STATE, at which
-time sound is first generated. Following this, a transition from the PLAYING_STATE to
-FINISHED_STATE happens when either the buffer's audio data has been completely
+rhythmically perfect ways). The start() method is used to schedule when
+sound playback will happen. The playback will stop automatically when
+the buffer's audio data has been completely
played (if the <code>loop</code> attribute is false), or when the stop()
method has been called and the specified time has been reached. Please see more
-details in the start() and stop() description. Once an
-AudioBufferSourceNode has reached the FINISHED state it will no longer emit any
-sound. Thus start() and stop() may not be issued multiple times for a given
+details in the start() and stop() description. start() and stop() may not be issued
+multiple times for a given
AudioBufferSourceNode. </p>
<pre> numberOfInputs : 0
numberOfOutputs : 1
@@ -2219,13 +2214,6 @@
interface <dfn id="dfn-AudioBufferSourceNode">AudioBufferSourceNode</dfn> : AudioNode {
- const unsigned short UNSCHEDULED_STATE = 0;
- const unsigned short SCHEDULED_STATE = 1;
- const unsigned short PLAYING_STATE = 2;
- const unsigned short FINISHED_STATE = 3;
-
- readonly attribute unsigned short playbackState;
-
attribute AudioBuffer? buffer;
readonly attribute AudioParam playbackRate;
@@ -2245,11 +2233,6 @@
<div id="attributes-AudioBufferSourceNode-section" class="section">
<h3 id="attributes-AudioBufferSourceNode">4.10.1. Attributes</h3>
<dl>
- <dt id="dfn-playbackState_AudioBufferSourceNode"><code>playbackState</code></dt>
- <dd><p>The playback state, initialized to UNSCHEDULED_STATE. </p>
- </dd>
-</dl>
-<dl>
<dt id="dfn-buffer_AudioBufferSourceNode"><code>buffer</code></dt>
<dd><p>Represents the audio asset to be played. </p>
</dd>
@@ -3706,13 +3689,6 @@
attribute OscillatorType type;
- const unsigned short UNSCHEDULED_STATE = 0;
- const unsigned short SCHEDULED_STATE = 1;
- const unsigned short PLAYING_STATE = 2;
- const unsigned short FINISHED_STATE = 3;
-
- readonly attribute unsigned short playbackState;
-
readonly attribute AudioParam frequency; // in Hertz
readonly attribute AudioParam detune; // in Cents
@@ -3734,11 +3710,6 @@
being set to "custom". The default value is "sine". </p>
</dd>
</dl>
-<dl>
- <dt id="dfn-playbackState"><code>playbackState</code></dt>
- <dd><p>defined as in <a href="#AudioBufferSourceNode-section"><code>AudioBufferSourceNode</code></a>. </p>
- </dd>
-</dl>
<dl>
<dt id="dfn-frequency"><code>frequency</code></dt>