-
Notifications
You must be signed in to change notification settings - Fork 103
Description
Description
I may be mistaken, but it looks like the octave band splitting may not be writing the filtered signals out, but rather just copying the input to the output.
In particular, the summing stage of ims_shoebox_renderRIR() sums the input channels for a given band wrk->rir_bands[band][i] into the output buffer &(rir->data[i*(wrk->rir_len_samples)]
/* Sum */
for(i=0; i<echogram_abs->nChannels; i++)
cblas_saxpy(wrk->rir_len_samples, 1.0f, wrk->rir_bands[band][i], 1, &(rir->data[i*(wrk->rir_len_samples)]), 1);The previous block shows the filtered band channels being stored in the temp variable. I would assume it's this filtered signal, temp that should be summed back into the output.
This may not have been caught because it looks like the ambiRoomSim plugin only uses broadband absorption, and I couldn't find anywhere that ims_shoebox_renderRIRs() was actually called.
Here's the larger block for context
https://github.com/leomccormack/Spatial_Audio_Framework/blob/82e3b75a9e4b9deb098e01416b1e91f6feeafb7f/framework/modules/saf_reverb/saf_reverb_internal.c#L685C3-L709
Thanks!