frac32buffer l
frac32buffer r
frac32buffer l
frac32buffer r
frac32.u.map amount
frac32.u.map time
frac32.u.map diffusion
frac32.u.map gain
frac32.u.map lowpass
rings_fx::Reverb reverb;
reverb.Init((uint16_t *)sdram_malloc(32768));
static float left[BUFSIZE];
static float right[BUFSIZE];
int i;
reverb.set_amount(q27_to_float(param_amount));
reverb.set_input_gain(q27_to_float(param_gain));
reverb.set_time(q27_to_float(param_time));
reverb.set_diffusion(q27_to_float(param_diffusion));
reverb.set_lp(q27_to_float(param_lowpass));
for (i = 0; i < BUFSIZE; i++) {
left[i] = q27_to_float(inlet_l[i]);
right[i] = q27_to_float(inlet_r[i]);
}
reverb.Process(left, right, BUFSIZE);
for (i = 0; i < BUFSIZE; i++) {
outlet_l[i] = float_to_q27(left[i]);
outlet_r[i] = float_to_q27(right[i]);
}