Document reverb controls

This commit is contained in:
Raphael Forment 2023-10-01 11:52:24 +02:00
parent 0ad0046a76
commit abff279707
3 changed files with 57 additions and 7 deletions

View file

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

View file

@ -113,7 +113,13 @@ function getReverb(orbit, duration = 2) {
// If no reverb has been created for a given orbit, create one
if (!reverbs[orbit]) {
const ac = getAudioContext();
const reverb = ac.createReverb(duration, getAudioContext());
const reverb = ac.createReverb(
duration,
getAudioContext(),
fade,
revlp,
revdim,
);
reverb.connect(getDestination());
console.log(reverb)
reverbs[orbit] = reverb;
@ -222,6 +228,9 @@ export const superdough = async (value, deadline, hapDuration) => {
delaytime = 0.25,
orbit = 1,
room,
fade = 0.1,
revlp = 15000,
revdim = 1000,
size = 2,
velocity = 1,
analyze, // analyser wet