diff options
author | Christian Glöckner <cgloeckner@freenet.de> | 2016-05-12 10:01:25 +0200 |
---|---|---|
committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2017-04-23 14:47:57 +0200 |
commit | 7924b3c3b64950758fbba5b0a68e9b3432b7a892 (patch) | |
tree | 2a3ca1e8395abc606348644ac8f9cbcb45d8a5b2 /drumgizmo/input/jackmidi.cc | |
parent | 2f2cde95bce634f26e43cdcb94cae7b27e378544 (diff) |
Reduced some code redundancy
Diffstat (limited to 'drumgizmo/input/jackmidi.cc')
-rw-r--r-- | drumgizmo/input/jackmidi.cc | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/drumgizmo/input/jackmidi.cc b/drumgizmo/input/jackmidi.cc index 7c5cf1c..0839ae3 100644 --- a/drumgizmo/input/jackmidi.cc +++ b/drumgizmo/input/jackmidi.cc @@ -118,22 +118,14 @@ void JackMidiInputEngine::process(jack_nframes_t num_frames) { jack_midi_event_t event; jack_midi_event_get(&event, buffer, i); - if(event.size != 3) - { + + event_t out; + if (!midi_processor(event.size, event.buffer, out)) { + // unsupported event continue; } - if((event.buffer[0] & NOTE_ON) != NOTE_ON) - { - continue; - } - int key = event.buffer[1]; - int velocity = event.buffer[2]; - printf("Event key:%d vel:%d\n", key, velocity); - int k = mmap.lookup(key); - if(k != -1 && velocity) - { - events.push_back({TYPE_ONSET, (size_t)k, event.time, velocity / 127.f}); - } + out.offset = event.time; + events.push_back(out); } jack_midi_clear_buffer(buffer); pos += num_frames; |