jack: handle note-on velocity=0 events

This commit is contained in:
Jean Pierre Cimalando 2020-05-04 04:57:20 +02:00
parent fab0aafc8a
commit dc238a5f73

View file

@ -64,11 +64,13 @@ int process(jack_nframes_t numFrames, void* arg)
continue; continue;
switch (midi::status(event.buffer[0])) { switch (midi::status(event.buffer[0])) {
case midi::noteOff: case midi::noteOff: noteoff:
// DBG("[MIDI] Note " << +event.buffer[1] << " OFF at time " << event.time); // DBG("[MIDI] Note " << +event.buffer[1] << " OFF at time " << event.time);
synth->noteOff(event.time, event.buffer[1], event.buffer[2]); synth->noteOff(event.time, event.buffer[1], event.buffer[2]);
break; break;
case midi::noteOn: case midi::noteOn:
if (event.buffer[2] == 0)
goto noteoff;
// DBG("[MIDI] Note " << +event.buffer[1] << " ON at time " << event.time); // DBG("[MIDI] Note " << +event.buffer[1] << " ON at time " << event.time);
synth->noteOn(event.time, event.buffer[1], event.buffer[2]); synth->noteOn(event.time, event.buffer[1], event.buffer[2]);
break; break;