| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // See https://webaudio.github.io/web-audio-api/#audioworkletglobalscope |
| |
| [ |
| Exposed=AudioWorklet, |
| Global=(Worklet,AudioWorklet) |
| ] interface AudioWorkletGlobalScope : WorkletGlobalScope { |
| [RaisesException, MeasureAs=AudioWorkletGlobalScopeRegisterProcessor] void registerProcessor(DOMString name, BlinkAudioWorkletProcessorConstructor processorCtor); |
| readonly attribute unsigned long long currentFrame; |
| readonly attribute double currentTime; |
| readonly attribute float sampleRate; |
| }; |
| |
| // Blink-specific types |
| // https://webaudio.github.io/web-audio-api/#instantiation-of-AudioWorkletNode-and-AudioWorkletProcessor |
| // The name 'AudioWorkletProcessorConstructor' is already taken by a hack of |
| // constructor-property-aliasing. |
| callback BlinkAudioWorkletProcessorConstructor = any (any options); |
| // https://webaudio.github.io/web-audio-api/#rendering-loop |
| // 'Blink' prefix is added to be consistent with |
| // BlinkAudioWorkletProcessorConstructor. |
| callback BlinkAudioWorkletProcessCallback = any (any inputs, any outputs, any paramValues); |