TBH if I was going to add anything like that, I’d probably prefer to refactor the existing calls into something like “appliesTo (int noteNumber, int channel, float velocity)” to avoid lots of virtual calls.
It could be done in a way that doesn’t break existing code, by providing default implementations of virtual functions but I think Jules wouldn’t like it because the old routines would still exist.
Nope. For each sample you have a velocity range defined, and only when the played velocity falls into that range, it should sound. It’s exactly the same logic as for the midi note number.