Bumping manifests a=b2g-bump
[gecko.git] / dom / webidl / AudioNode.webidl
blob3bb8f4f41b4a402dc765935cfb845f01a1feb53e
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://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html
8  *
9  * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
10  * liability, trademark and document use rules apply.
11  */
13 enum ChannelCountMode {
14     "max",
15     "clamped-max",
16     "explicit"
19 enum ChannelInterpretation {
20     "speakers",
21     "discrete"
24 interface AudioNode : EventTarget {
26     [Throws]
27     void connect(AudioNode destination, optional unsigned long output = 0, optional unsigned long input = 0);
28     [Throws]
29     void connect(AudioParam destination, optional unsigned long output = 0);
30     [Throws]
31     void disconnect(optional unsigned long output = 0);
33     readonly attribute AudioContext context;
34     readonly attribute unsigned long numberOfInputs;
35     readonly attribute unsigned long numberOfOutputs;
37     // Channel up-mixing and down-mixing rules for all inputs.
38     [SetterThrows]
39     attribute unsigned long channelCount;
40     [SetterThrows]
41     attribute ChannelCountMode channelCountMode;
42     attribute ChannelInterpretation channelInterpretation;
46 // Mozilla extension
47 partial interface AudioNode {
48   [ChromeOnly]
49   readonly attribute unsigned long id;
51 [NoInterfaceObject]
52 interface AudioNodePassThrough {
53   [ChromeOnly]
54   attribute boolean passThrough;