2023-10-01 14:44:34 +02:00

37 lines
910 B
JavaScript

import reverbGen from './reverbGen.mjs';
if (typeof AudioContext !== 'undefined') {
AudioContext.prototype.generateReverb = reverbGen.generateReverb;
AudioContext.prototype.createReverb = function(
audioContext,
duration,
fade,
revlp,
revdim
) {
const convolver = this.createConvolver();
convolver.setDuration = (d, fade, revlp, revdim) => {
this.generateReverb(
{
audioContext,
sampleRate: 44100,
numChannels: 2,
decayTime: d,
fadeInTime: fade,
lpFreqStart: revlp,
lpFreqEnd: revdim,
},
(buffer) => {
convolver.buffer = buffer;
}
);
convolver.duration = d;
convolver.fade = fade;
convolver.revlp = revlp;
convolver.revdim = revdim;
};
convolver.setDuration(duration, fade, revlp, revdim);
return convolver;
};
}