Index: Source/modules/webaudio/AudioContext.idl |
diff --git a/Source/modules/webaudio/AudioContext.idl b/Source/modules/webaudio/AudioContext.idl |
index b0398cceb78b0cab869e3e9189e0f2355ed625c6..7a4f6d5db05e95d04cb33f65587f5f1a693b4a55 100644 |
--- a/Source/modules/webaudio/AudioContext.idl |
+++ b/Source/modules/webaudio/AudioContext.idl |
@@ -23,6 +23,12 @@ |
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
+enum AudioContextState { |
+ "paused", |
+ "running", |
+ "released" |
+}; |
+ |
[ |
GarbageCollected, |
ActiveDOMObject, |
@@ -45,6 +51,9 @@ |
// All panning is relative to this listener. |
readonly attribute AudioListener listener; |
+ // Current state of the AudioContext |
+ readonly attribute AudioContextState state; |
+ |
[RaisesException] AudioBuffer createBuffer(unsigned long numberOfChannels, unsigned long numberOfFrames, float sampleRate); |
// Asynchronous audio file data decoding. |
@@ -75,6 +84,10 @@ |
[RaisesException] ChannelSplitterNode createChannelSplitter(optional unsigned long numberOfOutputs); |
[RaisesException] ChannelMergerNode createChannelMerger(optional unsigned long numberOfInputs); |
+ // Pause/resume |
+ [RaisesException, ImplementedAs=suspendContext] void suspend(); |
+ [CallWith=ScriptState, ImplementedAs=resumeContext] Promise resume(); |
+ |
// Offline rendering |
// void prepareOfflineBufferRendering(unsigned long numberOfChannels, unsigned long numberOfFrames, float sampleRate); |
attribute EventHandler oncomplete; |