Merge mozilla-central to autoland on a CLOSED TREE
[gecko.git] / dom / webidl / AudioBufferSourceNode.webidl
blob7c0f91441aaedfedb8f75aa494135a97c1da9282
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
4  * You can obtain one at http://mozilla.org/MPL/2.0/.
5  *
6  * The origin of this IDL file is
7  * https://webaudio.github.io/web-audio-api/
8  *
9  * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
10  * liability, trademark and document use rules apply.
11  */
13 dictionary AudioBufferSourceOptions {
14              AudioBuffer? buffer;
15              float        detune = 0;
16              boolean      loop = false;
17              double       loopEnd = 0;
18              double       loopStart = 0;
19              float        playbackRate = 1;
22 [Pref="dom.webaudio.enabled",
23  Exposed=Window]
24 interface AudioBufferSourceNode : AudioScheduledSourceNode {
25     constructor(BaseAudioContext context,
26                 optional AudioBufferSourceOptions options = {});
28     [SetterThrows]
29     attribute AudioBuffer? buffer;
31     readonly attribute AudioParam playbackRate;
32     readonly attribute AudioParam detune;
34     attribute boolean loop;
35     attribute double loopStart;
36     attribute double loopEnd;
38     [Throws]
39     undefined start(optional double when = 0, optional double grainOffset = 0,
40                     optional double grainDuration);
43 // Mozilla extensions
44 AudioBufferSourceNode includes AudioNodePassThrough;