AnalyserNode.webidl (1622B)
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 */ 12 13 dictionary AnalyserOptions : AudioNodeOptions { 14 unsigned long fftSize = 2048; 15 double maxDecibels = -30; 16 double minDecibels = -100; 17 double smoothingTimeConstant = 0.8; 18 }; 19 20 [Pref="dom.webaudio.enabled", 21 Exposed=Window] 22 interface AnalyserNode : AudioNode { 23 [Throws] 24 constructor(BaseAudioContext context, 25 optional AnalyserOptions options = {}); 26 27 // Real-time frequency-domain data 28 undefined getFloatFrequencyData(Float32Array array); 29 undefined getByteFrequencyData(Uint8Array array); 30 31 // Real-time waveform data 32 undefined getFloatTimeDomainData(Float32Array array); 33 undefined getByteTimeDomainData(Uint8Array array); 34 35 [SetterThrows, Pure] 36 attribute unsigned long fftSize; 37 [Pure] 38 readonly attribute unsigned long frequencyBinCount; 39 40 [SetterThrows, Pure] 41 attribute double minDecibels; 42 [SetterThrows, Pure] 43 attribute double maxDecibels; 44 45 [SetterThrows, Pure] 46 attribute double smoothingTimeConstant; 47 48 }; 49 50 // Mozilla extension 51 AnalyserNode includes AudioNodePassThrough;