Backed out changeset 2a94e8bad21e (bug 1874716) for causing CXX related build bustage...
[gecko.git] / dom / webidl / AnalyserNode.webidl
blobe7ed151d9db295a60145f89a25ab333fe7555f50
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 AnalyserOptions : AudioNodeOptions {
14              unsigned long fftSize = 2048;
15              double        maxDecibels = -30;
16              double        minDecibels = -100;
17              double        smoothingTimeConstant = 0.8;
20 [Pref="dom.webaudio.enabled",
21  Exposed=Window]
22 interface AnalyserNode : AudioNode {
23     [Throws]
24     constructor(BaseAudioContext context,
25                 optional AnalyserOptions options = {});
27     // Real-time frequency-domain data
28     undefined getFloatFrequencyData(Float32Array array);
29     undefined getByteFrequencyData(Uint8Array array);
31     // Real-time waveform data
32     undefined getFloatTimeDomainData(Float32Array array);
33     undefined getByteTimeDomainData(Uint8Array array);
35     [SetterThrows, Pure]
36     attribute unsigned long fftSize;
37     [Pure]
38     readonly attribute unsigned long frequencyBinCount;
40     [SetterThrows, Pure]
41     attribute double minDecibels;
42     [SetterThrows, Pure]
43     attribute double maxDecibels;
45     [SetterThrows, Pure]
46     attribute double smoothingTimeConstant;
50 // Mozilla extension
51 AnalyserNode includes AudioNodePassThrough;