Using the Synthesizer , we need to know when a voice was just stolen, so that to re-init an internal ADSR envelop before the voice is used again. It there a reliable way to know that?
perhaps you can simply do that re-init in startNote() no?
Just restructured the code for that.