So I am back again with my real time convolution plugin. I implemented the convolution, add my convoluted samples to a FIFO using the abstractFifo class as suggested, and it worked! There was only one problem, a ton of aliasing was present. I was told to use the overlap-add method on my FIFO to overcome this problem. Is this a good way to handle my aliasing, or could be problem stem from something math related?
I’m not exactly sure if you need help understanding the mathematical background of the overlap-add method or if the idea of the overlap-add method is clear to you and you just need help implementing it.
If you need help understanding the background, I would like to propose this PHD to you:
I compared some approaches of FPGA- and CPU-based real-time convolution in my bachelor thesis last year and this document helped me a lot understanding the different approaches of real-time convolution algorithms.
By the way, I implemented a non-JUCE-based convolution algorithm written in C++ using the overlap-save method, which I personally prefer some time ago. But it’s up to you to check which approach suits better to your needs…