@ng-web-apis/audio
Version:
This is a library for declarative use of Web Audio API with Angular
19 lines (18 loc) • 1.8 kB
TypeScript
import type { OnDestroy } from '@angular/core';
import { EventEmitter } from '@angular/core';
import { Subject } from 'rxjs';
import { AudioBufferService } from '../services/audio-buffer.service';
import type { AudioParamInput } from '../types/audio-param-input';
import * as i0 from "@angular/core";
export declare class WebAudioBufferSource extends AudioBufferSourceNode implements OnDestroy {
protected buffer$: Subject<AudioBuffer | string | null>;
detuneParam?: AudioParamInput;
playbackRateParam?: AudioParamInput;
ended?: EventEmitter<void>;
constructor(autoplay: string | null, detuneArg: string | null, playbackRateArg: string | null);
protected static init(that: WebAudioBufferSource, _node: AudioNode | null, autoplay: string | null, audioBufferService: AudioBufferService): void;
set bufferSetter(source: AudioBuffer | string | null);
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<WebAudioBufferSource, [{ attribute: "autoplay"; }, { attribute: "detune"; }, { attribute: "playbackRate"; }]>;
static ɵdir: i0.ɵɵDirectiveDeclaration<WebAudioBufferSource, "[waAudioBufferSourceNode]", ["AudioNode"], { "loop": { "alias": "loop"; "required": false; }; "loopStart": { "alias": "loopStart"; "required": false; }; "loopEnd": { "alias": "loopEnd"; "required": false; }; "channelCount": { "alias": "channelCount"; "required": false; }; "channelCountMode": { "alias": "channelCountMode"; "required": false; }; "channelInterpretation": { "alias": "channelInterpretation"; "required": false; }; "detuneParam": { "alias": "detune"; "required": false; }; "playbackRateParam": { "alias": "playbackRate"; "required": false; }; "bufferSetter": { "alias": "buffer"; "required": false; }; }, { "ended": "ended"; }, never, never, true, never>;
}