From e600b91a8569685444bb1f719f9c6ed4b8910b9b Mon Sep 17 00:00:00 2001 From: Raphael Forment Date: Sun, 1 Oct 2023 12:02:17 +0200 Subject: [PATCH] bugfixes for parameter passing --- packages/superdough/reverb.mjs | 4 ++-- packages/superdough/superdough.mjs | 12 +++++------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/packages/superdough/reverb.mjs b/packages/superdough/reverb.mjs index 505d0ac2..4c5bc1d1 100644 --- a/packages/superdough/reverb.mjs +++ b/packages/superdough/reverb.mjs @@ -3,14 +3,14 @@ import reverbGen from './reverbGen.mjs'; if (typeof AudioContext !== 'undefined') { AudioContext.prototype.generateReverb = reverbGen.generateReverb; AudioContext.prototype.createReverb = function( - duration, audioContext, + duration, fade, revlp, revdim ) { const convolver = this.createConvolver(); - convolver.setDuration = (d) => { + convolver.setDuration = (d, fade, revlp, revdim) => { this.generateReverb( { audioContext, diff --git a/packages/superdough/superdough.mjs b/packages/superdough/superdough.mjs index 33c108f2..607c649d 100644 --- a/packages/superdough/superdough.mjs +++ b/packages/superdough/superdough.mjs @@ -108,29 +108,27 @@ function getDelay(orbit, delaytime, delayfeedback, t) { let reverbs = {}; -function getReverb(orbit, duration = 2) { +function getReverb(orbit, duration = 2, fade, revlp, revdim) { // If no reverb has been created for a given orbit, create one if (!reverbs[orbit]) { const ac = getAudioContext(); const reverb = ac.createReverb( - duration, getAudioContext(), + duration, fade, revlp, - revdim, ); reverb.connect(getDestination()); console.log(reverb) reverbs[orbit] = reverb; } - // Update the reverb duration if needed after instanciation if (reverbs[orbit].duration !== duration) { - reverbs[orbit] = reverbs[orbit].setDuration(duration); + reverbs[orbit] = reverbs[orbit].setDuration( + duration, fade, revlp, revdim); reverbs[orbit].duration = duration; } - return reverbs[orbit]; } @@ -370,7 +368,7 @@ export const superdough = async (value, deadline, hapDuration) => { // reverb let reverbSend; if (room > 0 && size > 0) { - const reverbNode = getReverb(orbit, size); + const reverbNode = getReverb(orbit, size, fade, revlp, revdim); reverbSend = effectSend(post, reverbNode, room); }