Using parameters to change synthesiser voice values in a synth plugin


#1

Not sure if this has been answered before. If so a link would be appreciated.

I have been developing a synthesiser plugin but have been unable to find a way of using a parameter value in my synthesiser voice class at runtime. I have tried pointers and running an update function from the audio processor to send the pointer values but no luck. I’m relatively new to coding audio processing software. Any ideas or solutions?


#2

If you’re storing the parameters in a parent class of your SynthesiserVoice then you could have some getter methods for the parameters that you want in this class and pass a reference to it to your SynthesiserVoice. Then in your renderNextBlock() method you can update these parameters before rendering your voice.

Ed


#3

Ok good shout. I will have a look at this. I currently am creating variables of pointers to the parameter values which works in the main audio process block.

Cheers


#4

I have been trying to get this working but had no luck. Are there and examples or sample code you could link me to?

I have been setting a variable in the synthesiserVoice renderNextBlock to a variable or pointer from the main AudioProcessor and this seems to only work when the voice is created and won’t update at runtime.

Like this:

void renderNextBlock{
valueInSynthVoice=*AudioProcessor::AudioProcessor().pointerInAudioProcessor;
processBlock(…)
}

Thanks