I’m starting an open-source project to build a piano damper resonance plugin. It would be loaded downstream from a sample player (e.g., sfizz, Sforzando) and would apply a convolution IR built from summing all the piano’s notes and normalizing. It would only apply the convolution when the sustain pedal is down, or has just been released (in which case it would fade out, following a release envelope curve.)
So, in theory, a pretty simple plugin, with three parameters: IR file, effect volume, and release time constant. JUCE has a nice convolution class, which makes things even easier. But I see there are a number of details to get right.
My question is, what approaches should I consider?
Despite good advice otherwise, I’m currently using VS Community on Windows and Projucer. I’ve built the MIDI plugin demo using Projucer, which went smoothly enough. I’m very familiar with Linux and have both WSL and VirtualBox Ubuntu, and normally prefer that working environment, but the tutorial went smoothly enough I think I’ll stick with it for now.
For the purpose of getting the plugin up and running with least effort, should I stick with the tutorial Projucer model? I also see that there’s a PIP for Convolution Demo, might I consider using that instead?
Does anyone know of a good open-source project using Convolution, for reference purposes?
Any suggestions greatly appreciated!
BTW, I do know that (unfortunately) neither sfizz nor Sforzando pass MIDI, so host plumbing would be required, to pass audio from the sampleset instrument and MIDI from input to the plugin. That’s not an issue here.
