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 13enum BiquadFilterType { 14 "lowpass", 15 "highpass", 16 "bandpass", 17 "lowshelf", 18 "highshelf", 19 "peaking", 20 "notch", 21 "allpass" 22}; 23 24dictionary BiquadFilterOptions : AudioNodeOptions { 25 BiquadFilterType type = "lowpass"; 26 float Q = 1; 27 float detune = 0; 28 float frequency = 350; 29 float gain = 0; 30}; 31 32[Pref="dom.webaudio.enabled", 33 Constructor(BaseAudioContext context, optional BiquadFilterOptions options)] 34interface BiquadFilterNode : AudioNode { 35 36 attribute BiquadFilterType type; 37 readonly attribute AudioParam frequency; // in Hertz 38 readonly attribute AudioParam detune; // in Cents 39 readonly attribute AudioParam Q; // Quality factor 40 readonly attribute AudioParam gain; // in Decibels 41 42 undefined getFrequencyResponse(Float32Array frequencyHz, 43 Float32Array magResponse, 44 Float32Array phaseResponse); 45 46}; 47