tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

AudioParam.webidl (2220B)


      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/#enumdef-automationrate
      8 * https://webaudio.github.io/web-audio-api/#audioparam
      9 *
     10 * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
     11 * liability, trademark and document use rules apply.
     12 */
     13 
     14 enum AutomationRate {
     15    "a-rate",
     16    "k-rate"
     17 };
     18 
     19 [Pref="dom.webaudio.enabled",
     20 Exposed=Window]
     21 interface AudioParam {
     22    [SetterThrows]
     23                    attribute float value;
     24    readonly        attribute float defaultValue;
     25    readonly        attribute float minValue;
     26    readonly        attribute float maxValue;
     27 
     28    // Parameter automation.
     29    [Throws]
     30    AudioParam setValueAtTime(float value, double startTime);
     31    [Throws]
     32    AudioParam linearRampToValueAtTime(float value, double endTime);
     33    [Throws]
     34    AudioParam exponentialRampToValueAtTime(float value, double endTime);
     35 
     36    // Exponentially approach the target value with a rate having the given time constant.
     37    [Throws]
     38    AudioParam setTargetAtTime(float target, double startTime, double timeConstant);
     39 
     40    // Sets an array of arbitrary parameter values starting at time for the given duration.
     41    // The number of values will be scaled to fit into the desired duration.
     42    [Throws]
     43    AudioParam setValueCurveAtTime(sequence<float> values, double startTime, double duration);
     44 
     45    // Cancels all scheduled parameter changes with times greater than or equal to startTime.
     46    [Throws]
     47    AudioParam cancelScheduledValues(double startTime);
     48 
     49 };
     50 
     51 // Mozilla extension
     52 partial interface AudioParam {
     53  // The ID of the AudioNode this AudioParam belongs to.
     54  [ChromeOnly]
     55  readonly attribute unsigned long parentNodeId;
     56  // The name of the AudioParam
     57  [ChromeOnly]
     58  readonly attribute DOMString name;
     59 };
     60 
     61 partial interface AudioParam {
     62  // This attribute is used for mochitest only.
     63  [ChromeOnly]
     64  readonly attribute boolean isTrackSuspended;
     65 };