I don't really understand this pairing system for HISE MIDI note on and note off messages
-
I keep getting problems when adding note on and note offs with the
Synth.addNoteOn
or
Synth.addNoteOffwhere sometimes even though I am producing the note on and off messages in the right order, they are not registering somehow in the HISE playback system of those events.
As you can see here, I have consecutive note on/off pairs:
60 on / 60 off
67 on / 67 off
60 on / 60 offSo note 60 should be off at the end of this list.
But it hangs in the Sine Wave Generator which follows this module.On the left side of the Event Logger, it looks like HISE is trying to do some kind of event pair matching by the looks of the brackets, and for whatever reason is trying to "close" the original 60 note. I take it whatever process this represents is what is making my note hang, even though there is a note off event.
I do not see any documentation on the Event Logger or this feature.
Can someone explain what this is doing and why it is thwarting my expectations of how the MIDI messages are supposed to be working? -
@VirtualVirgin print the Event ID and see if they match...
-
@Lindon said in I don't really understand this pairing system for HISE MIDI note on and note off messages:
@VirtualVirgin print the Event ID and see if they match...
So here it is with the Event ID:
As you can see, the hung note (the last 60 on the list) is not closing the note on 60 that just preceded it.
So I would assume that HISE is trying to match the event ID of the note off to a note on before making it "available" or "active".
I just don't understand this method or the point of it.
Why is it trying to close notes that are already closed?
In the type of MIDI engineering I am used to, if a note off occurs after a note on of the same channel and note number, it closes that note, end of story. No other special conditions needed.Is there some way to turn this Event ID matching system off for the note messages?
I would like that last note off 60 to close the previous note on, no matter the Event ID.