| /** |
| * High-fidelity audio programming in the browser. |
| * |
| * {@category Web} |
| */ |
| library dart.dom.web_audio; |
| |
| import 'dart:async'; |
| import 'dart:collection' hide LinkedList, LinkedListEntry; |
| import 'dart:_internal' show FixedLengthListMixin; |
| import 'dart:html'; |
| import 'dart:html_common'; |
| import 'dart:_native_typed_data'; |
| import 'dart:typed_data'; |
| import 'dart:_foreign_helper' show JS; |
| import 'dart:_interceptors' show JavaScriptObject; |
| // DO NOT EDIT - unless you are editing documentation as per: |
| // https://code.google.com/p/dart/wiki/ContributingHTMLDocumentation |
| // Auto-generated dart:audio library. |
| |
| import 'dart:_js_helper' |
| show |
| Creates, |
| JavaScriptIndexingBehavior, |
| JSName, |
| Native, |
| Returns, |
| convertDartClosureToJS; |
| |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AnalyserNode,RealtimeAnalyserNode") |
| class AnalyserNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory AnalyserNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory AnalyserNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return AnalyserNode._create_1(context, options_1); |
| } |
| return AnalyserNode._create_2(context); |
| } |
| static AnalyserNode _create_1(context, options) => |
| JS('AnalyserNode', 'new AnalyserNode(#,#)', context, options); |
| static AnalyserNode _create_2(context) => |
| JS('AnalyserNode', 'new AnalyserNode(#)', context); |
| |
| int? get fftSize native; |
| |
| set fftSize(int? value) native; |
| |
| int? get frequencyBinCount native; |
| |
| num? get maxDecibels native; |
| |
| set maxDecibels(num? value) native; |
| |
| num? get minDecibels native; |
| |
| set minDecibels(num? value) native; |
| |
| num? get smoothingTimeConstant native; |
| |
| set smoothingTimeConstant(num? value) native; |
| |
| void getByteFrequencyData(Uint8List array) native; |
| |
| void getByteTimeDomainData(Uint8List array) native; |
| |
| void getFloatFrequencyData(Float32List array) native; |
| |
| void getFloatTimeDomainData(Float32List array) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioBuffer") |
| class AudioBuffer extends JavaScriptObject { |
| // To suppress missing implicit constructor warnings. |
| factory AudioBuffer._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory AudioBuffer(Map options) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return AudioBuffer._create_1(options_1); |
| } |
| static AudioBuffer _create_1(options) => |
| JS('AudioBuffer', 'new AudioBuffer(#)', options); |
| |
| num? get duration native; |
| |
| int? get length native; |
| |
| int? get numberOfChannels native; |
| |
| num? get sampleRate native; |
| |
| void copyFromChannel(Float32List destination, int channelNumber, |
| [int? startInChannel]) native; |
| |
| void copyToChannel(Float32List source, int channelNumber, |
| [int? startInChannel]) native; |
| |
| Float32List getChannelData(int channelIndex) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @SupportedBrowser(SupportedBrowser.CHROME) |
| @SupportedBrowser(SupportedBrowser.FIREFOX) |
| @Native("AudioBufferSourceNode") |
| class AudioBufferSourceNode extends AudioScheduledSourceNode { |
| // To suppress missing implicit constructor warnings. |
| factory AudioBufferSourceNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory AudioBufferSourceNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return AudioBufferSourceNode._create_1(context, options_1); |
| } |
| return AudioBufferSourceNode._create_2(context); |
| } |
| static AudioBufferSourceNode _create_1(context, options) => JS( |
| 'AudioBufferSourceNode', |
| 'new AudioBufferSourceNode(#,#)', |
| context, |
| options); |
| static AudioBufferSourceNode _create_2(context) => |
| JS('AudioBufferSourceNode', 'new AudioBufferSourceNode(#)', context); |
| |
| AudioBuffer? get buffer native; |
| |
| set buffer(AudioBuffer? value) native; |
| |
| AudioParam? get detune native; |
| |
| bool? get loop native; |
| |
| set loop(bool? value) native; |
| |
| num? get loopEnd native; |
| |
| set loopEnd(num? value) native; |
| |
| num? get loopStart native; |
| |
| set loopStart(num? value) native; |
| |
| AudioParam? get playbackRate native; |
| |
| void start([num? when, num? grainOffset, num? grainDuration]) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @SupportedBrowser(SupportedBrowser.CHROME) |
| @SupportedBrowser(SupportedBrowser.FIREFOX) |
| @Native("AudioContext,webkitAudioContext") |
| class AudioContext extends BaseAudioContext { |
| // To suppress missing implicit constructor warnings. |
| factory AudioContext._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| /// Checks if this type is supported on the current platform. |
| static bool get supported => |
| JS('bool', '!!(window.AudioContext || window.webkitAudioContext)'); |
| |
| num? get baseLatency native; |
| |
| Future close() => promiseToFuture(JS("", "#.close()", this)); |
| |
| Map getOutputTimestamp() { |
| return convertNativeToDart_Dictionary(_getOutputTimestamp_1())!; |
| } |
| |
| @JSName('getOutputTimestamp') |
| _getOutputTimestamp_1() native; |
| |
| Future suspend() => promiseToFuture(JS("", "#.suspend()", this)); |
| |
| factory AudioContext() => JS('AudioContext', |
| 'new (window.AudioContext || window.webkitAudioContext)()'); |
| |
| GainNode createGain() { |
| if (JS('bool', '#.createGain !== undefined', this)) { |
| return JS('GainNode', '#.createGain()', this); |
| } else { |
| return JS('GainNode', '#.createGainNode()', this); |
| } |
| } |
| |
| ScriptProcessorNode createScriptProcessor( |
| [int? bufferSize, |
| int? numberOfInputChannels, |
| int? numberOfOutputChannels]) { |
| var function = JS( |
| '=Object', |
| '#.createScriptProcessor || ' |
| '#.createJavaScriptNode', |
| this, |
| this); |
| if (numberOfOutputChannels != null) { |
| return JS('ScriptProcessorNode', '#.call(#, #, #, #)', function, this, |
| bufferSize, numberOfInputChannels, numberOfOutputChannels); |
| } else if (numberOfInputChannels != null) { |
| return JS('ScriptProcessorNode', '#.call(#, #, #)', function, this, |
| bufferSize, numberOfInputChannels); |
| } else if (bufferSize != null) { |
| return JS( |
| 'ScriptProcessorNode', '#.call(#, #)', function, this, bufferSize); |
| } else { |
| return JS('ScriptProcessorNode', '#.call(#)', function, this); |
| } |
| } |
| |
| @JSName('decodeAudioData') |
| Future<AudioBuffer> _decodeAudioData(ByteBuffer audioData, |
| [DecodeSuccessCallback? successCallback, |
| DecodeErrorCallback? errorCallback]) native; |
| |
| Future<AudioBuffer> decodeAudioData(ByteBuffer audioData, |
| [DecodeSuccessCallback? successCallback, |
| DecodeErrorCallback? errorCallback]) { |
| if (successCallback != null && errorCallback != null) { |
| return _decodeAudioData(audioData, successCallback, errorCallback); |
| } |
| |
| var completer = new Completer<AudioBuffer>(); |
| _decodeAudioData(audioData, (value) { |
| completer.complete(value); |
| }, (error) { |
| if (error == null) { |
| completer.completeError(''); |
| } else { |
| completer.completeError(error); |
| } |
| }); |
| return completer.future; |
| } |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioDestinationNode") |
| class AudioDestinationNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory AudioDestinationNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| int? get maxChannelCount native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioListener") |
| class AudioListener extends JavaScriptObject { |
| // To suppress missing implicit constructor warnings. |
| factory AudioListener._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| AudioParam? get forwardX native; |
| |
| AudioParam? get forwardY native; |
| |
| AudioParam? get forwardZ native; |
| |
| AudioParam? get positionX native; |
| |
| AudioParam? get positionY native; |
| |
| AudioParam? get positionZ native; |
| |
| AudioParam? get upX native; |
| |
| AudioParam? get upY native; |
| |
| AudioParam? get upZ native; |
| |
| void setOrientation(num x, num y, num z, num xUp, num yUp, num zUp) native; |
| |
| void setPosition(num x, num y, num z) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioNode") |
| class AudioNode extends EventTarget { |
| // To suppress missing implicit constructor warnings. |
| factory AudioNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| int? get channelCount native; |
| |
| set channelCount(int? value) native; |
| |
| String? get channelCountMode native; |
| |
| set channelCountMode(String? value) native; |
| |
| String? get channelInterpretation native; |
| |
| set channelInterpretation(String? value) native; |
| |
| BaseAudioContext? get context native; |
| |
| int? get numberOfInputs native; |
| |
| int? get numberOfOutputs native; |
| |
| @JSName('connect') |
| AudioNode _connect(destination, [int? output, int? input]) native; |
| |
| void disconnect([destination_OR_output, int? output, int? input]) native; |
| |
| void connectNode(AudioNode destination, [int output = 0, int input = 0]) { |
| _connect(destination, output, input); |
| } |
| |
| void connectParam(AudioParam destination, [int output = 0]) { |
| _connect(destination, output); |
| } |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioParam") |
| class AudioParam extends JavaScriptObject { |
| // To suppress missing implicit constructor warnings. |
| factory AudioParam._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| num? get defaultValue native; |
| |
| num? get maxValue native; |
| |
| num? get minValue native; |
| |
| num? get value native; |
| |
| set value(num? value) native; |
| |
| AudioParam cancelAndHoldAtTime(num startTime) native; |
| |
| AudioParam cancelScheduledValues(num startTime) native; |
| |
| AudioParam exponentialRampToValueAtTime(num value, num time) native; |
| |
| AudioParam linearRampToValueAtTime(num value, num time) native; |
| |
| AudioParam setTargetAtTime(num target, num time, num timeConstant) native; |
| |
| AudioParam setValueAtTime(num value, num time) native; |
| |
| AudioParam setValueCurveAtTime(List<num> values, num time, num duration) |
| native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioParamMap") |
| class AudioParamMap extends JavaScriptObject with MapMixin<String, dynamic> { |
| // To suppress missing implicit constructor warnings. |
| factory AudioParamMap._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| Map? _getItem(String key) => |
| convertNativeToDart_Dictionary(JS('', '#.get(#)', this, key)); |
| |
| void addAll(Map<String, dynamic> other) { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| bool containsValue(dynamic value) => values.any((e) => e == value); |
| |
| bool containsKey(dynamic key) => _getItem(key) != null; |
| |
| Map? operator [](dynamic key) => _getItem(key); |
| |
| void forEach(void f(String key, dynamic value)) { |
| var entries = JS('', '#.entries()', this); |
| while (true) { |
| var entry = JS('', '#.next()', entries); |
| if (JS('bool', '#.done', entry)) return; |
| f(JS('String', '#.value[0]', entry), |
| convertNativeToDart_Dictionary(JS('', '#.value[1]', entry))); |
| } |
| } |
| |
| Iterable<String> get keys { |
| final keys = <String>[]; |
| forEach((k, v) => keys.add(k)); |
| return keys; |
| } |
| |
| Iterable<Map> get values { |
| final values = <Map>[]; |
| forEach((k, v) => values.add(v)); |
| return values; |
| } |
| |
| int get length => JS('int', '#.size', this); |
| |
| bool get isEmpty => length == 0; |
| |
| bool get isNotEmpty => !isEmpty; |
| |
| void operator []=(String key, dynamic value) { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| dynamic putIfAbsent(String key, dynamic ifAbsent()) { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| String remove(dynamic key) { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| void clear() { |
| throw new UnsupportedError("Not supported"); |
| } |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioProcessingEvent") |
| class AudioProcessingEvent extends Event { |
| // To suppress missing implicit constructor warnings. |
| factory AudioProcessingEvent._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory AudioProcessingEvent(String type, Map eventInitDict) { |
| var eventInitDict_1 = convertDartToNative_Dictionary(eventInitDict); |
| return AudioProcessingEvent._create_1(type, eventInitDict_1); |
| } |
| static AudioProcessingEvent _create_1(type, eventInitDict) => JS( |
| 'AudioProcessingEvent', |
| 'new AudioProcessingEvent(#,#)', |
| type, |
| eventInitDict); |
| |
| AudioBuffer? get inputBuffer native; |
| |
| AudioBuffer? get outputBuffer native; |
| |
| num? get playbackTime native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioScheduledSourceNode") |
| class AudioScheduledSourceNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory AudioScheduledSourceNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| static const EventStreamProvider<Event> endedEvent = |
| const EventStreamProvider<Event>('ended'); |
| |
| @JSName('start') |
| void start2([num? when]) native; |
| |
| void stop([num? when]) native; |
| |
| Stream<Event> get onEnded => endedEvent.forTarget(this); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioTrack") |
| class AudioTrack extends JavaScriptObject { |
| // To suppress missing implicit constructor warnings. |
| factory AudioTrack._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| bool? get enabled native; |
| |
| set enabled(bool? value) native; |
| |
| String? get id native; |
| |
| String? get kind native; |
| |
| String? get label native; |
| |
| String? get language native; |
| |
| SourceBuffer? get sourceBuffer native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioTrackList") |
| class AudioTrackList extends EventTarget { |
| // To suppress missing implicit constructor warnings. |
| factory AudioTrackList._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| static const EventStreamProvider<Event> changeEvent = |
| const EventStreamProvider<Event>('change'); |
| |
| int? get length native; |
| |
| AudioTrack __getter__(int index) native; |
| |
| AudioTrack? getTrackById(String id) native; |
| |
| Stream<Event> get onChange => changeEvent.forTarget(this); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioWorkletGlobalScope") |
| class AudioWorkletGlobalScope extends WorkletGlobalScope { |
| // To suppress missing implicit constructor warnings. |
| factory AudioWorkletGlobalScope._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| num? get currentTime native; |
| |
| num? get sampleRate native; |
| |
| void registerProcessor(String name, Object processorConstructor) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioWorkletNode") |
| class AudioWorkletNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory AudioWorkletNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory AudioWorkletNode(BaseAudioContext context, String name, |
| [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return AudioWorkletNode._create_1(context, name, options_1); |
| } |
| return AudioWorkletNode._create_2(context, name); |
| } |
| static AudioWorkletNode _create_1(context, name, options) => JS( |
| 'AudioWorkletNode', |
| 'new AudioWorkletNode(#,#,#)', |
| context, |
| name, |
| options); |
| static AudioWorkletNode _create_2(context, name) => |
| JS('AudioWorkletNode', 'new AudioWorkletNode(#,#)', context, name); |
| |
| AudioParamMap? get parameters native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("AudioWorkletProcessor") |
| class AudioWorkletProcessor extends JavaScriptObject { |
| // To suppress missing implicit constructor warnings. |
| factory AudioWorkletProcessor._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("BaseAudioContext") |
| class BaseAudioContext extends EventTarget { |
| // To suppress missing implicit constructor warnings. |
| factory BaseAudioContext._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| num? get currentTime native; |
| |
| AudioDestinationNode? get destination native; |
| |
| AudioListener? get listener native; |
| |
| num? get sampleRate native; |
| |
| String? get state native; |
| |
| AnalyserNode createAnalyser() native; |
| |
| BiquadFilterNode createBiquadFilter() native; |
| |
| AudioBuffer createBuffer( |
| int numberOfChannels, int numberOfFrames, num sampleRate) native; |
| |
| AudioBufferSourceNode createBufferSource() native; |
| |
| ChannelMergerNode createChannelMerger([int? numberOfInputs]) native; |
| |
| ChannelSplitterNode createChannelSplitter([int? numberOfOutputs]) native; |
| |
| ConstantSourceNode createConstantSource() native; |
| |
| ConvolverNode createConvolver() native; |
| |
| DelayNode createDelay([num? maxDelayTime]) native; |
| |
| DynamicsCompressorNode createDynamicsCompressor() native; |
| |
| GainNode createGain() native; |
| |
| @JSName('createIIRFilter') |
| IirFilterNode createIirFilter(List<num> feedForward, List<num> feedBack) |
| native; |
| |
| MediaElementAudioSourceNode createMediaElementSource( |
| MediaElement mediaElement) native; |
| |
| MediaStreamAudioDestinationNode createMediaStreamDestination() native; |
| |
| MediaStreamAudioSourceNode createMediaStreamSource(MediaStream mediaStream) |
| native; |
| |
| OscillatorNode createOscillator() native; |
| |
| PannerNode createPanner() native; |
| |
| PeriodicWave createPeriodicWave(List<num> real, List<num> imag, |
| [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return _createPeriodicWave_1(real, imag, options_1); |
| } |
| return _createPeriodicWave_2(real, imag); |
| } |
| |
| @JSName('createPeriodicWave') |
| PeriodicWave _createPeriodicWave_1(List<num> real, List<num> imag, options) |
| native; |
| @JSName('createPeriodicWave') |
| PeriodicWave _createPeriodicWave_2(List<num> real, List<num> imag) native; |
| |
| ScriptProcessorNode createScriptProcessor( |
| [int? bufferSize, |
| int? numberOfInputChannels, |
| int? numberOfOutputChannels]) native; |
| |
| StereoPannerNode createStereoPanner() native; |
| |
| WaveShaperNode createWaveShaper() native; |
| |
| Future<AudioBuffer> decodeAudioData(ByteBuffer audioData, |
| [DecodeSuccessCallback? successCallback, |
| DecodeErrorCallback? errorCallback]) => |
| promiseToFuture<AudioBuffer>(JS( |
| "creates:AudioBuffer;", |
| "#.decodeAudioData(#, #, #)", |
| this, |
| audioData, |
| successCallback, |
| errorCallback)); |
| |
| Future resume() => promiseToFuture(JS("", "#.resume()", this)); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("BiquadFilterNode") |
| class BiquadFilterNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory BiquadFilterNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory BiquadFilterNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return BiquadFilterNode._create_1(context, options_1); |
| } |
| return BiquadFilterNode._create_2(context); |
| } |
| static BiquadFilterNode _create_1(context, options) => |
| JS('BiquadFilterNode', 'new BiquadFilterNode(#,#)', context, options); |
| static BiquadFilterNode _create_2(context) => |
| JS('BiquadFilterNode', 'new BiquadFilterNode(#)', context); |
| |
| AudioParam? get Q native; |
| |
| AudioParam? get detune native; |
| |
| AudioParam? get frequency native; |
| |
| AudioParam? get gain native; |
| |
| String? get type native; |
| |
| set type(String? value) native; |
| |
| void getFrequencyResponse(Float32List frequencyHz, Float32List magResponse, |
| Float32List phaseResponse) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("ChannelMergerNode,AudioChannelMerger") |
| class ChannelMergerNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory ChannelMergerNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory ChannelMergerNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return ChannelMergerNode._create_1(context, options_1); |
| } |
| return ChannelMergerNode._create_2(context); |
| } |
| static ChannelMergerNode _create_1(context, options) => |
| JS('ChannelMergerNode', 'new ChannelMergerNode(#,#)', context, options); |
| static ChannelMergerNode _create_2(context) => |
| JS('ChannelMergerNode', 'new ChannelMergerNode(#)', context); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("ChannelSplitterNode,AudioChannelSplitter") |
| class ChannelSplitterNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory ChannelSplitterNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory ChannelSplitterNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return ChannelSplitterNode._create_1(context, options_1); |
| } |
| return ChannelSplitterNode._create_2(context); |
| } |
| static ChannelSplitterNode _create_1(context, options) => JS( |
| 'ChannelSplitterNode', 'new ChannelSplitterNode(#,#)', context, options); |
| static ChannelSplitterNode _create_2(context) => |
| JS('ChannelSplitterNode', 'new ChannelSplitterNode(#)', context); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("ConstantSourceNode") |
| class ConstantSourceNode extends AudioScheduledSourceNode { |
| // To suppress missing implicit constructor warnings. |
| factory ConstantSourceNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory ConstantSourceNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return ConstantSourceNode._create_1(context, options_1); |
| } |
| return ConstantSourceNode._create_2(context); |
| } |
| static ConstantSourceNode _create_1(context, options) => |
| JS('ConstantSourceNode', 'new ConstantSourceNode(#,#)', context, options); |
| static ConstantSourceNode _create_2(context) => |
| JS('ConstantSourceNode', 'new ConstantSourceNode(#)', context); |
| |
| AudioParam? get offset native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("ConvolverNode") |
| class ConvolverNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory ConvolverNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory ConvolverNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return ConvolverNode._create_1(context, options_1); |
| } |
| return ConvolverNode._create_2(context); |
| } |
| static ConvolverNode _create_1(context, options) => |
| JS('ConvolverNode', 'new ConvolverNode(#,#)', context, options); |
| static ConvolverNode _create_2(context) => |
| JS('ConvolverNode', 'new ConvolverNode(#)', context); |
| |
| AudioBuffer? get buffer native; |
| |
| set buffer(AudioBuffer? value) native; |
| |
| bool? get normalize native; |
| |
| set normalize(bool? value) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("DelayNode") |
| class DelayNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory DelayNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory DelayNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return DelayNode._create_1(context, options_1); |
| } |
| return DelayNode._create_2(context); |
| } |
| static DelayNode _create_1(context, options) => |
| JS('DelayNode', 'new DelayNode(#,#)', context, options); |
| static DelayNode _create_2(context) => |
| JS('DelayNode', 'new DelayNode(#)', context); |
| |
| AudioParam? get delayTime native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("DynamicsCompressorNode") |
| class DynamicsCompressorNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory DynamicsCompressorNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory DynamicsCompressorNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return DynamicsCompressorNode._create_1(context, options_1); |
| } |
| return DynamicsCompressorNode._create_2(context); |
| } |
| static DynamicsCompressorNode _create_1(context, options) => JS( |
| 'DynamicsCompressorNode', |
| 'new DynamicsCompressorNode(#,#)', |
| context, |
| options); |
| static DynamicsCompressorNode _create_2(context) => |
| JS('DynamicsCompressorNode', 'new DynamicsCompressorNode(#)', context); |
| |
| AudioParam? get attack native; |
| |
| AudioParam? get knee native; |
| |
| AudioParam? get ratio native; |
| |
| num? get reduction native; |
| |
| AudioParam? get release native; |
| |
| AudioParam? get threshold native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("GainNode,AudioGainNode") |
| class GainNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory GainNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory GainNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return GainNode._create_1(context, options_1); |
| } |
| return GainNode._create_2(context); |
| } |
| static GainNode _create_1(context, options) => |
| JS('GainNode', 'new GainNode(#,#)', context, options); |
| static GainNode _create_2(context) => |
| JS('GainNode', 'new GainNode(#)', context); |
| |
| AudioParam? get gain native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("IIRFilterNode") |
| class IirFilterNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory IirFilterNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory IirFilterNode(BaseAudioContext context, Map options) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return IirFilterNode._create_1(context, options_1); |
| } |
| static IirFilterNode _create_1(context, options) => |
| JS('IirFilterNode', 'new IIRFilterNode(#,#)', context, options); |
| |
| void getFrequencyResponse(Float32List frequencyHz, Float32List magResponse, |
| Float32List phaseResponse) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("MediaElementAudioSourceNode") |
| class MediaElementAudioSourceNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory MediaElementAudioSourceNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory MediaElementAudioSourceNode(BaseAudioContext context, Map options) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return MediaElementAudioSourceNode._create_1(context, options_1); |
| } |
| static MediaElementAudioSourceNode _create_1(context, options) => JS( |
| 'MediaElementAudioSourceNode', |
| 'new MediaElementAudioSourceNode(#,#)', |
| context, |
| options); |
| |
| MediaElement? get mediaElement native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("MediaStreamAudioDestinationNode") |
| class MediaStreamAudioDestinationNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory MediaStreamAudioDestinationNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory MediaStreamAudioDestinationNode(BaseAudioContext context, |
| [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return MediaStreamAudioDestinationNode._create_1(context, options_1); |
| } |
| return MediaStreamAudioDestinationNode._create_2(context); |
| } |
| static MediaStreamAudioDestinationNode _create_1(context, options) => JS( |
| 'MediaStreamAudioDestinationNode', |
| 'new MediaStreamAudioDestinationNode(#,#)', |
| context, |
| options); |
| static MediaStreamAudioDestinationNode _create_2(context) => JS( |
| 'MediaStreamAudioDestinationNode', |
| 'new MediaStreamAudioDestinationNode(#)', |
| context); |
| |
| MediaStream? get stream native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("MediaStreamAudioSourceNode") |
| class MediaStreamAudioSourceNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory MediaStreamAudioSourceNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory MediaStreamAudioSourceNode(BaseAudioContext context, Map options) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return MediaStreamAudioSourceNode._create_1(context, options_1); |
| } |
| static MediaStreamAudioSourceNode _create_1(context, options) => JS( |
| 'MediaStreamAudioSourceNode', |
| 'new MediaStreamAudioSourceNode(#,#)', |
| context, |
| options); |
| |
| MediaStream? get mediaStream native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("OfflineAudioCompletionEvent") |
| class OfflineAudioCompletionEvent extends Event { |
| // To suppress missing implicit constructor warnings. |
| factory OfflineAudioCompletionEvent._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory OfflineAudioCompletionEvent(String type, Map eventInitDict) { |
| var eventInitDict_1 = convertDartToNative_Dictionary(eventInitDict); |
| return OfflineAudioCompletionEvent._create_1(type, eventInitDict_1); |
| } |
| static OfflineAudioCompletionEvent _create_1(type, eventInitDict) => JS( |
| 'OfflineAudioCompletionEvent', |
| 'new OfflineAudioCompletionEvent(#,#)', |
| type, |
| eventInitDict); |
| |
| AudioBuffer? get renderedBuffer native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("OfflineAudioContext") |
| class OfflineAudioContext extends BaseAudioContext { |
| // To suppress missing implicit constructor warnings. |
| factory OfflineAudioContext._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory OfflineAudioContext(numberOfChannels_OR_options, |
| [int? numberOfFrames, num? sampleRate]) { |
| if ((sampleRate is num) && |
| (numberOfFrames is int) && |
| (numberOfChannels_OR_options is int)) { |
| return OfflineAudioContext._create_1( |
| numberOfChannels_OR_options, numberOfFrames, sampleRate); |
| } |
| if ((numberOfChannels_OR_options is Map) && |
| numberOfFrames == null && |
| sampleRate == null) { |
| var options_1 = |
| convertDartToNative_Dictionary(numberOfChannels_OR_options); |
| return OfflineAudioContext._create_2(options_1); |
| } |
| throw new ArgumentError("Incorrect number or type of arguments"); |
| } |
| static OfflineAudioContext _create_1( |
| numberOfChannels_OR_options, numberOfFrames, sampleRate) => |
| JS('OfflineAudioContext', 'new OfflineAudioContext(#,#,#)', |
| numberOfChannels_OR_options, numberOfFrames, sampleRate); |
| static OfflineAudioContext _create_2(numberOfChannels_OR_options) => JS( |
| 'OfflineAudioContext', |
| 'new OfflineAudioContext(#)', |
| numberOfChannels_OR_options); |
| |
| int? get length native; |
| |
| Future<AudioBuffer> startRendering() => promiseToFuture<AudioBuffer>( |
| JS("creates:AudioBuffer;", "#.startRendering()", this)); |
| |
| @JSName('suspend') |
| Future suspendFor(num suspendTime) => |
| promiseToFuture(JS("", "#.suspend(#)", this, suspendTime)); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("OscillatorNode,Oscillator") |
| class OscillatorNode extends AudioScheduledSourceNode { |
| // To suppress missing implicit constructor warnings. |
| factory OscillatorNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory OscillatorNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return OscillatorNode._create_1(context, options_1); |
| } |
| return OscillatorNode._create_2(context); |
| } |
| static OscillatorNode _create_1(context, options) => |
| JS('OscillatorNode', 'new OscillatorNode(#,#)', context, options); |
| static OscillatorNode _create_2(context) => |
| JS('OscillatorNode', 'new OscillatorNode(#)', context); |
| |
| AudioParam? get detune native; |
| |
| AudioParam? get frequency native; |
| |
| String? get type native; |
| |
| set type(String? value) native; |
| |
| void setPeriodicWave(PeriodicWave periodicWave) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("PannerNode,AudioPannerNode,webkitAudioPannerNode") |
| class PannerNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory PannerNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory PannerNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return PannerNode._create_1(context, options_1); |
| } |
| return PannerNode._create_2(context); |
| } |
| static PannerNode _create_1(context, options) => |
| JS('PannerNode', 'new PannerNode(#,#)', context, options); |
| static PannerNode _create_2(context) => |
| JS('PannerNode', 'new PannerNode(#)', context); |
| |
| num? get coneInnerAngle native; |
| |
| set coneInnerAngle(num? value) native; |
| |
| num? get coneOuterAngle native; |
| |
| set coneOuterAngle(num? value) native; |
| |
| num? get coneOuterGain native; |
| |
| set coneOuterGain(num? value) native; |
| |
| String? get distanceModel native; |
| |
| set distanceModel(String? value) native; |
| |
| num? get maxDistance native; |
| |
| set maxDistance(num? value) native; |
| |
| AudioParam? get orientationX native; |
| |
| AudioParam? get orientationY native; |
| |
| AudioParam? get orientationZ native; |
| |
| String? get panningModel native; |
| |
| set panningModel(String? value) native; |
| |
| AudioParam? get positionX native; |
| |
| AudioParam? get positionY native; |
| |
| AudioParam? get positionZ native; |
| |
| num? get refDistance native; |
| |
| set refDistance(num? value) native; |
| |
| num? get rolloffFactor native; |
| |
| set rolloffFactor(num? value) native; |
| |
| void setOrientation(num x, num y, num z) native; |
| |
| void setPosition(num x, num y, num z) native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("PeriodicWave") |
| class PeriodicWave extends JavaScriptObject { |
| // To suppress missing implicit constructor warnings. |
| factory PeriodicWave._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory PeriodicWave(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return PeriodicWave._create_1(context, options_1); |
| } |
| return PeriodicWave._create_2(context); |
| } |
| static PeriodicWave _create_1(context, options) => |
| JS('PeriodicWave', 'new PeriodicWave(#,#)', context, options); |
| static PeriodicWave _create_2(context) => |
| JS('PeriodicWave', 'new PeriodicWave(#)', context); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("ScriptProcessorNode,JavaScriptAudioNode") |
| class ScriptProcessorNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory ScriptProcessorNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| /** |
| * Static factory designed to expose `audioprocess` events to event |
| * handlers that are not necessarily instances of [ScriptProcessorNode]. |
| * |
| * See [EventStreamProvider] for usage information. |
| */ |
| static const EventStreamProvider<AudioProcessingEvent> audioProcessEvent = |
| const EventStreamProvider<AudioProcessingEvent>('audioprocess'); |
| |
| int? get bufferSize native; |
| |
| void setEventListener(EventListener eventListener) native; |
| |
| /// Stream of `audioprocess` events handled by this [ScriptProcessorNode]. |
| /** |
| * Get a Stream that fires events when AudioProcessingEvents occur. |
| * This particular stream is special in that it only allows one listener to a |
| * given stream. Converting the returned [Stream.asBroadcastStream] will |
| * likely ruin the soft-real-time properties which which these events are |
| * fired and can be processed. |
| */ |
| Stream<AudioProcessingEvent> get onAudioProcess => |
| audioProcessEvent.forTarget(this); |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("StereoPannerNode") |
| class StereoPannerNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory StereoPannerNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory StereoPannerNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return StereoPannerNode._create_1(context, options_1); |
| } |
| return StereoPannerNode._create_2(context); |
| } |
| static StereoPannerNode _create_1(context, options) => |
| JS('StereoPannerNode', 'new StereoPannerNode(#,#)', context, options); |
| static StereoPannerNode _create_2(context) => |
| JS('StereoPannerNode', 'new StereoPannerNode(#)', context); |
| |
| AudioParam? get pan native; |
| } |
| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| @Native("WaveShaperNode") |
| class WaveShaperNode extends AudioNode { |
| // To suppress missing implicit constructor warnings. |
| factory WaveShaperNode._() { |
| throw new UnsupportedError("Not supported"); |
| } |
| |
| factory WaveShaperNode(BaseAudioContext context, [Map? options]) { |
| if (options != null) { |
| var options_1 = convertDartToNative_Dictionary(options); |
| return WaveShaperNode._create_1(context, options_1); |
| } |
| return WaveShaperNode._create_2(context); |
| } |
| static WaveShaperNode _create_1(context, options) => |
| JS('WaveShaperNode', 'new WaveShaperNode(#,#)', context, options); |
| static WaveShaperNode _create_2(context) => |
| JS('WaveShaperNode', 'new WaveShaperNode(#)', context); |
| |
| Float32List? get curve native; |
| |
| set curve(Float32List? value) native; |
| |
| String? get oversample native; |
| |
| set oversample(String? value) native; |
| } |