SpectralSuite icon indicating copy to clipboard operation
SpectralSuite copied to clipboard

Create convolution effect

Open andrewreeman opened this issue 6 years ago • 6 comments
trafficstars

andrewreeman avatar Jan 26 '19 22:01 andrewreeman

i saw this type of reverb plugins a lot

endphp2 avatar Jan 27 '19 14:01 endphp2

Yes that's right! This will essentially use a similar technique to convolution reverbs.

andrewreeman avatar Feb 19 '19 19:02 andrewreeman

I reached for you're tools the other month looking for this exactly. Did you ever get around to implementing this? Anything I can do to help.

pixmusix avatar Jul 10 '24 05:07 pixmusix

Unfortunately I've been focusing on general plugin stability so haven't had time to create anything new.

I'd appreciate any help on this even if it's just a proof of concept or even just an investigation into what needs to change to support this.

The below shows that the actual convolution part may be relatively straightforward, just a multiplication of 2 fft sources, which is stated at the bottom of this article: https://cmtext.indiana.edu/synthesis/chapter4_convolution.php

The main problem is the architecture currently is not setup at all to accommodate taking 2 separate input sources, hence why quite a few places might need to change.

Appreciate any help on this even if it's a work in progress branch that does the convolution part but doesn't build because of the architecture.

Thanks 😀

andrewreeman avatar Jul 10 '24 07:07 andrewreeman

The main problem is the architecture currently is not setup at all to accommodate taking 2 separate input sources, hence why quite a few places might need to change.

Do you think side chaining would be an alternative?

I'd appreciate any help on this even if it's just a proof of concept or even just an investigation into what needs to change to support this.

Is all of this build in JUCE? Haven't touched it since University but I'm sure I can get on my feet nice and quick.

Any other tips to get myself setup for development?

pixmusix avatar Jul 11 '24 05:07 pixmusix

Yea I think side chaining is how this would work, because it basically needs another separate audio input.

It's all built in JUCE and there are good tutorials on their website.

For getting started I think creating a new plugin and then modifying the 'spectral_process' method to take 2 inputs and see what we'd have to do with those inputs to get convolution working. Just let the other plugins break for now as the first draft of this will be a proof of concept.

For now dont even bother about the caller actually passing 2 inputs. Once we're happy with the 'spectral_process' contents...then we can deal with the painful bit of how we pass this audio in!

Thanks for looking into it 😁

andrewreeman avatar Jul 11 '24 20:07 andrewreeman