Oversampling on convolution reverb
Hi guys! How can I implement oversampling on the convolution reverb fx? I'm getting some aliasing on 44.1 and 48 but it's gone at 88 and 96. Thanks!
@Christoph-Hart I really wish there was a button for that But for now, is there a walkaround?
I noticed there’s an oversample node in the scriptnode view but I’ve got no idea how to implement that, especially since I never used the scriptnode features and the convolution files are swapped via the interface.
Lindon last edited by
@tomekslesicki there was a long discussion here about Convolution reverbs and sample rates - try searching the forum.. I cant recall who it was... sorry.
@tomekslesicki i am very interested in this as well , i did see a discussion about sample rates changing the volume of the reverb as well, not sure if that was resolved ?
Yeah, I've seen every thread that contained word 'convolution' by now. It's just that there seems to be no solution. @Christoph-Hart ?
Ok, I think it has to do something with IPP. When I build HISE without it and then compile the plugin it seems to work fine.
Christoph Hart last edited by
Can you send me the IR in question? IIRC @hisefilo also had a certain impulse response that triggered some issues with the first frequency bin in the FFT.
@Christoph-Hart Choosing Ooura FFT this fixed that issue. I can remember
// oninit const var ConvolutionReverb1 = Synth.getEffect("Convolution Reverb1"); // Set the FFT type // 0 = best available // 1 = IPP // 2 = Apple Accelerate // 3 = Ooura FFT (slower fallback, but most portable) ConvolutionReverb1.setAttribute(ConvolutionReverb1.FFTType, 0);
Christoph Hart last edited by
Ah nice, so I didn't fix the IPP version back then
d.healey last edited by
What about adding KISSFFT?
Is the convolution set to 0 " best available" as default ?
Verfied , have aliasing here as well....maybe !
Although not sure that is aliasing I am at 96k and that makes no difference, guess I need to try another export with the Ooura ?
I dont get that 20K spike when using the same impulse in other reverbs
@hisefilo Are you referring to the aliasing issue by using Ooura ?
What does slower fallback mean and would you recommend just using the Ooura even though IPP has been recommended up to now ?
If i change the FFT type from 0, I lose the reverb and get some sort of room type doubling sound
Setting it back to zero does not help.
Setting it to 3 seems to get rid of most of the "Aliasing" , but I also lose the reverb so....hehe
Sine wave through Reaper Reaverb using my Impulse.
Same Sine , same impulse through my plugin.
I dont think its impulse specific as all my 90 impulses look like that .
Vocals through Reaverb.
Vocals through my plug, same impulse.
@lalalandsynth no aliasing on 0oura but IPP
Don't know details about the comments on the code I posted. It's old @Christoph-Hart magic!
@hisefilo ok, but it does not seem to work for me , lose the reverb sound if I change the FFT mode.
I am going to test some more impulses , but I think its pretty clear that there is a problem.
My reverb plugin is just about ready
Any chance to get a fix for this?
Was planning an impulse reverb as my first release.
@lalalandsynth an oversampled convolution node on scriptnode?
@hisefilo Oh, that is possible , does it behave in a similar way in terms of loading impulses etc or do I have to do everything over ?
Will check it out.
@lalalandsynth Quick test and that seems to work to get rid of the aliasing!
8x oversampling, maybe even 2 x would be enough , now I just need to find out if I can replace those impulses on the fly or if the scriptnode impulse is meant to just sit there as an static impulse ?
I suspect i cannot even get a reference for the Convolution Module in the scriptnode, is there some way to script the switching of impulses in scriptnode ?
I can export the Convolution module as ccp and make the changing of impulses public i.e create a meta node but unsure of how to include the oversampling in that ?
Man..if there was only a knob for the index.....sigh .