Hello,

I’ve got a question concerning the dsp::Convolution class.

I need to convolve multiple incoming signals from the soundcard in real-time with room impulse responses. The processing is done within a VST-plugin. Depending on the room’s reverberation time, the impulse responses can be quite long.

To reduce computation time, I want to do the filtering with fast convolution in the frequency domain. For my understanding, fast-convolution induces a delay. The delay depends on the method of the fast convolution (overlap-add or overlap-save), the length of the FFT and the number of the overlapping samples. For my algorithm, I need to know this delay.

The question is: Is the dsp::Convolution suitable for this task? What kind of fast-convolution algorithm is used here? What is the FFT size and the number of overlapping samples, used internally?

While studying the code, I saw the comment “Overlap-add, zero latency convolution algorithm”. How is zero latency realized?

It would be great to get some more insights into the algorithm.

Thanks in advance.

Best regards,

Philipp.