X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fmidi_port.cc;h=63004f658b975c7f7f13311fbb8a0a47ec05f435;hb=62ce39de7e971ec2b2b37e2e639ad0367fa49056;hp=0f91dd3e362d5543e047b88901f00c9ff282767a;hpb=9524b08752f22684c472acd5b3184d5c786e7103;p=ardour.git diff --git a/libs/ardour/midi_port.cc b/libs/ardour/midi_port.cc index 0f91dd3e36..63004f658b 100644 --- a/libs/ardour/midi_port.cc +++ b/libs/ardour/midi_port.cc @@ -128,10 +128,9 @@ MidiPort::cycle_split () void MidiPort::resolve_notes (void* jack_buffer, MidiBuffer::TimeType when) { - for (uint8_t channel = 0; channel <= 0xF; channel++) { - uint8_t ev[3] = { MIDI_CMD_CONTROL | channel, MIDI_CTL_SUSTAIN, 0 }; + uint8_t ev[3] = { ((uint8_t) (MIDI_CMD_CONTROL | channel)), MIDI_CTL_SUSTAIN, 0 }; /* we need to send all notes off AND turn the * sustain/damper pedal off to handle synths @@ -151,7 +150,7 @@ MidiPort::resolve_notes (void* jack_buffer, MidiBuffer::TimeType when) } void -MidiPort::flush_buffers (pframes_t nframes, framepos_t /*time*/) +MidiPort::flush_buffers (pframes_t nframes) { if (sends_output ()) { @@ -189,6 +188,12 @@ MidiPort::flush_buffers (pframes_t nframes, framepos_t /*time*/) } } +void +MidiPort::require_resolve () +{ + _resolve_required = true; +} + void MidiPort::transport_stopped () {