diff options
author | Hans Baier <hansfbaier@googlemail.com> | 2008-04-03 21:47:47 +0000 |
---|---|---|
committer | Hans Baier <hansfbaier@googlemail.com> | 2008-04-03 21:47:47 +0000 |
commit | fbfe9a798313fcb98b2d25df8d23c5c90c76a7ef (patch) | |
tree | 4d99a55cb00c85b67c2936cddce46ae411f44fe8 /libs/ardour/midi_track.cc | |
parent | 6554200e66cc243e92818e6e74d4647d1c34ae9c (diff) |
* implemented editing velocities (http://tracker.ardour.org/view.php?id=2148)
* added MIDI panic button (http://tracker.ardour.org/view.php?id=2118)
* bugfix: moving notes above midi 127 or below 0 does not wrap around anymore
* bugfix: deadlock on editing notes after playback (http://tracker.ardour.org/view.php?id=2140) due to unbalanced lock acquire/release
* bugfix: First note off lost in playback (http://tracker.ardour.org/view.php?id=2132)
* bugfix: Last note off lost in saving MIDI files (http://tracker.ardour.org/view.php?id=2132)
* bandaid fix for http://tracker.ardour.org/view.php?id=1985 (Cannot reopen session because jack ports are not unregistered on session close)
* bandaid fix: replaced conf.CheckPKGExists ('\"slv2 >= 0.6.0\"') by conf.CheckPKGExists ('slv2') in SConstruct, because the former would fail,
even if SLV 0.6.0 was installed
* added/enabled debugging output for debugging MIDI model (might be removed later)
git-svn-id: svn://localhost/ardour2/branches/3.0@3211 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/midi_track.cc')
-rw-r--r-- | libs/ardour/midi_track.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libs/ardour/midi_track.cc b/libs/ardour/midi_track.cc index bf97b19106..cbd9c52bf6 100644 --- a/libs/ardour/midi_track.cc +++ b/libs/ardour/midi_track.cc @@ -697,6 +697,19 @@ MidiTrack::set_note_mode (NoteMode m) midi_diskstream()->set_note_mode(m); } +void +MidiTrack::midi_panic() +{ + for(uint8_t channel = 0; channel <= 0xF; channel++) { + Byte ev[3] = { MIDI_CMD_CONTROL | channel, MIDI_CTL_SUSTAIN, 0 }; + write_immediate_event(3, ev); + ev[1] = MIDI_CTL_ALL_NOTES_OFF; + write_immediate_event(3, ev); + ev[1] = MIDI_CTL_RESET_CONTROLLERS; + write_immediate_event(3, ev); + } +} + /** \return true on success, false on failure (no buffer space left) */ bool |