wenn du von einem
note on in einem live midi stream die notennummer änderst, dann hat dieses
note on kein
note off mehr.
zu allem überdruss könnte der stream auch noten beinhalten, bei denen die später angespielte früher wieder aufhört als die zuerst angespielte - so dass man im prinzip für jede echtzeitbearbeitung von midi streams mit noten um das erstellen einer full-featured "busy map" nicht herumkommt.
busy map heißt, dass du alle note on notenwerte irgendwo abspeicherst, damit man denen (bzw dem, zu dem es verändert wird) dann später den korrekten "note off moment" wieder zuordnen kann.
ebenfalls müsstest du beachten, dass durch algorithmische modulation des notenwertes eine situation eintreten kann, in der zwei mal die gleiche note angespielt wird.
innerhalb eines max patches ist das cool (ich mache das da standardmäßig so in meinen synthesizer patches), aber im gewöhnlichen midi umfeld will man das nicht.
mindestens müsste das zweite identische
note on sich selbst ein
note off vorausschicken (so machen das die meisten geräte), oder aber du würfelst neu bzw. so lange, bis ein notenwert erzeugt wird, zu dem noch keine note "läuft", so dass eben immer nur verschiedene gleichzeitig rauskommen. (stell dir dabei einfach ein einzelnes keyboard vor, auf dem man ja auch nicht die gleiche taste zwei mal anschlagen kann bevor man sie wieder losgelassen hat... diese logik aus dem echten leben musst du dann nur noch nachbauen

)