Voice stealing does not appear to work correctly in MPESynthesiser


#1

Documentation says:

// This voice-stealing algorithm applies the following heuristics:
// - Re-use the oldest notes first
// - Protect the lowest & topmost notes, even if sustained, but not if they've been released.

Oldest note is determined by:

bool MPESynthesiserVoice::wasStartedBefore (const MPESynthesiserVoice& other) const noexcept
{
    return noteStartTime < other.noteStartTime;
}

However MPESynthesiserVoice::noteStartTime is never set and is private so I can’t set it in my voice.


#2

I’ll get that sorted, thanks.