Spaces:
Running
Running
File size: 567 Bytes
2b7aae2 | 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 | class AudioAnalyser {
constructor(audio, fftSize = 2048) {
this.analyser = audio.context.createAnalyser();
this.analyser.fftSize = fftSize;
this.data = new Uint8Array(this.analyser.frequencyBinCount);
audio.getOutput().connect(this.analyser);
}
getFrequencyData() {
this.analyser.getByteFrequencyData(this.data);
return this.data;
}
getAverageFrequency() {
let value = 0;
const data = this.getFrequencyData();
for (let i = 0; i < data.length; i++) {
value += data[i];
}
return value / data.length;
}
}
export { AudioAnalyser };
|