forked from katspaugh/wavesurfer.js
-
Notifications
You must be signed in to change notification settings - Fork 0
/
webaudio.d.ts
50 lines (50 loc) · 1.35 KB
/
webaudio.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import EventEmitter from './event-emitter.js';
type WebAudioPlayerEvents = {
loadedmetadata: [];
canplay: [];
play: [];
pause: [];
seeking: [];
timeupdate: [];
volumechange: [];
emptied: [];
ended: [];
};
/**
* A Web Audio buffer player emulating the behavior of an HTML5 Audio element.
*/
declare class WebAudioPlayer extends EventEmitter<WebAudioPlayerEvents> {
private audioContext;
private gainNode;
private bufferNode;
private autoplay;
private playStartTime;
private playedDuration;
private _muted;
private buffer;
currentSrc: string;
paused: boolean;
crossOrigin: string | null;
constructor(audioContext?: AudioContext);
load(): Promise<void>;
get src(): string;
set src(value: string);
private _play;
private _pause;
play(): Promise<void>;
pause(): void;
stopAt(timeSeconds: number): void;
setSinkId(deviceId: string): Promise<void>;
get playbackRate(): number;
set playbackRate(value: number);
get currentTime(): number;
set currentTime(value: number);
get duration(): number;
get volume(): number;
set volume(value: number);
get muted(): boolean;
set muted(value: boolean);
/** Get the GainNode used to play the audio. Can be used to attach filters. */
getGainNode(): GainNode;
}
export default WebAudioPlayer;