Getting specific callbacks for each parameter change?

Yup, if you’re smoothing all parameters, you’re damned to update them in every callback. I use smoothers for just a few things (gains, basically) because of this. Summing up (I got a bit lost myself), if you’re using parameters directly, you don’t need listeners. If you’re deriving values, but each derivation depends on a single parameter, you probably need listeners, and it’s probably better to have one for each parameter. For example, computing filter coefficients for a frequency -too costly to do it on every callback, but all from a single parameter. If you’re deriving values from more than one parameter, you probably need a queue. For example, an offset that’s added to a set of values. Each final value combines two parameters, so you need to synchronize their updates.

There’s a lot of questions about this stuff pretty much every week, and many different answers -it arguably depends a lot on the use case, and Juce doesn’t offer much beyond APVTS. I settled mostly on queues after watching Dave and Fabian’s talk. Before I tried something like this, which gave me a lot of headaches.

1 Like