ソースを参照

Generic option for Audio subclasses to override getOutput

Paul 5 年 前
コミット
b9b2fc68dd
3 ファイル変更6 行追加12 行削除
  1. 2 8
      src/audio/Audio.d.ts
  2. 2 2
      src/audio/AudioAnalyser.d.ts
  3. 2 2
      src/audio/PositionalAudio.d.ts

+ 2 - 8
src/audio/Audio.d.ts

@@ -4,7 +4,7 @@ import { AudioContext } from './AudioContext';
 
 // Extras / Audio /////////////////////////////////////////////////////////////////////
 
-export class Audio extends Object3D {
+export class Audio<NodeType extends AudioNode = GainNode> extends Object3D {
 
 	constructor( listener: AudioListener );
 	type: 'Audio';
@@ -27,7 +27,7 @@ export class Audio extends Object3D {
 	source: AudioBufferSourceNode;
 	filters: any[];
 
-	getOutput(): GainNode;
+	getOutput(): NodeType;
 	setNodeSource( audioNode: AudioBufferSourceNode ): this;
 	setMediaElementSource( mediaElement: HTMLMediaElement ): this;
 	setMediaStreamSource( mediaStream: MediaStream ): this;
@@ -58,9 +58,3 @@ export class Audio extends Object3D {
 	load( file: string ): Audio;
 
 }
-
-export class AudioWeaken extends Audio {
-
-	getOutput(): any;
-
-}

+ 2 - 2
src/audio/AudioAnalyser.d.ts

@@ -1,8 +1,8 @@
-import { AudioWeaken } from './Audio';
+import { Audio } from './Audio';
 
 export class AudioAnalyser {
 
-	constructor( audio: AudioWeaken, fftSize: number );
+	constructor( audio: Audio<AudioNode>, fftSize: number );
 
 	analyser: AnalyserNode;
 	data: Uint8Array;

+ 2 - 2
src/audio/PositionalAudio.d.ts

@@ -1,7 +1,7 @@
 import { AudioListener } from './AudioListener';
-import { AudioWeaken } from './Audio';
+import { Audio } from './Audio';
 
-export class PositionalAudio extends AudioWeaken {
+export class PositionalAudio extends Audio<PannerNode> {
 
 	constructor( listener: AudioListener );