jack: handle note-on velocity=0 events
This commit is contained in:
parent
fab0aafc8a
commit
dc238a5f73
1 changed files with 3 additions and 1 deletions
|
|
@ -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;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue