13
0
Commit Graph

844 Commits

Author SHA1 Message Date
7666a4a5ff Don't create tracks for empty MIDI channels on import (i.e. make import look clean and sensible).
Remove no longer useful debugging output.


git-svn-id: svn://localhost/ardour2/branches/3.0@3365 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-16 22:40:35 +00:00
Hans Baier
0c25b2aa8e * Fixed crash on closing MIDI automation tracks, because ARDOUR::Parameter::operator< violated strict weak ordering,
which is necessary for std::set to work correctly
* few small style guide corrections


git-svn-id: svn://localhost/ardour2/branches/3.0@3363 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-16 20:54:24 +00:00
8ab37dd700 Fix region/track naming on MIDI import (remove ugly/unnecessary %a %b etc suffix).
git-svn-id: svn://localhost/ardour2/branches/3.0@3360 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-16 03:21:18 +00:00
cb94baf6f4 Fix invalid error message during MIDI recording (or files with stuck notes).
Handle stuck notes more gracefully in the view (probably should show up as a diamond though?).


git-svn-id: svn://localhost/ardour2/branches/3.0@3359 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-16 03:11:28 +00:00
f53baec2e4 Tidy up MIDI debugging output.
git-svn-id: svn://localhost/ardour2/branches/3.0@3358 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-16 02:50:19 +00:00
722b85e828 Fix crash on out of range MIDI events (though this shouldn't be possible at all....).
git-svn-id: svn://localhost/ardour2/branches/3.0@3357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-16 02:35:37 +00:00
05801cc3d6 Eliminate excessive allocation (for every event) during MidiModel iteration.
git-svn-id: svn://localhost/ardour2/branches/3.0@3351 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-15 05:00:28 +00:00
Hans Baier
a65044d097 * formatting
* fixed corruption bugs due to allocation hell of MidiModel::const_iterator::_event: Changed it into boost::shared_ptr
* fixed  MidiModel::const_iterator bugs: 
	-First note on lost, if an automation event comes first
	-corrupt MidiEvent compared to automation event if there are no notes in the region
* (hopefully) fixed possible race condition 
* fixed range check in MidiDiskstream::set_state for channel mask
* treating notes with duration 0 more gently in MidiRegionView (warning instead of assertion)


git-svn-id: svn://localhost/ardour2/branches/3.0@3345 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-13 18:40:10 +00:00
Hans Baier
636f2184a5 * applied patch for ardour-3.0 to compile on OS X thanks to Sakari Bergen
git-svn-id: svn://localhost/ardour2/branches/3.0@3338 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-12 11:46:53 +00:00
Hans Baier
d467245152 * fixed various event size bugs
git-svn-id: svn://localhost/ardour2/branches/3.0@3336 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-12 10:03:53 +00:00
8ca72c4eca Fix various MIDI corruption bugs.
Re-enable MIDI CC controller bars and other immediate output (hans commented out, tsk tsk).
Write channel mode as textual enumeration instead of magic number.
Better atomic (almost) channel mode switching on MIDI ring buffer (was a possible, if unlikely, source of corruption).
Handle some cases of broken MIDI, and oversized events, more gracefully.


git-svn-id: svn://localhost/ardour2/branches/3.0@3335 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-12 02:40:48 +00:00
Hans Baier
4e745fc17c * formatting/style guide
* bugfix: midi_util.h only considered channel events up to E0, but had to be EF
* bugfix: parameter.h operator == should also compare channel (drobilla, correct me if I am wrong)
* added some assert() guards


git-svn-id: svn://localhost/ardour2/branches/3.0@3330 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-09 16:10:36 +00:00
Hans Baier
8d44391f4b * adjusted formatting a bit to style guide
* fixed: velocity value left on canvas
* fixed: end-of-track problem still showed up sometimes
* enabled heaps of debugging output in order to debug MidiModel corruption 


git-svn-id: svn://localhost/ardour2/branches/3.0@3329 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-09 11:28:14 +00:00
Hans Baier
f651190162 * fixed some valgrind issues (uninitialized instance vars)
* Added preliminary support for program changes flags from automation lists


git-svn-id: svn://localhost/ardour2/branches/3.0@3327 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-08 09:53:19 +00:00
Hans Baier
a42913736a * fixed crash bug in MidiModel::const_iterator::operator=: copied iterator from other which becomes invalid because
the container the iterator points into is destroyed
* fixed conditional jump from uninitialised value in CanvasNote


git-svn-id: svn://localhost/ardour2/branches/3.0@3326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-06 22:54:06 +00:00
e55e3fde7c Comment out excessive terminal output.
Write all events (not just notes) to SMF file from MidiModel
	(just use iterator instead of hand-hacked MidiModel::write_to).
Various MIDI bug fixes.


git-svn-id: svn://localhost/ardour2/branches/3.0@3312 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-03 21:55:43 +00:00
fb1fbf71af Fix range problems for pitch wheel controller.
git-svn-id: svn://localhost/ardour2/branches/3.0@3308 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-02 21:34:00 +00:00
ab2af5d185 Fix several crashes on MIDI recording.
Fix MIDI CC iterator infinite looping.
Only allocate Text widget for MIDI events if necessary.


git-svn-id: svn://localhost/ardour2/branches/3.0@3307 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-02 20:57:27 +00:00
e7e75e78c8 Fix range marker bar separator (colour is still off though, for some reason...).
git-svn-id: svn://localhost/ardour2/branches/3.0@3305 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-02 19:28:25 +00:00
Hans Baier
0e394fb66b * removed old implementation for Program Changes from MidiModel
* Added Automation based implementation for Program Changes, Pitch Bender and Channel Aftertouch

git-svn-id: svn://localhost/ardour2/branches/3.0@3304 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-02 19:09:32 +00:00
da45f489dd Fixes for GCC 4.3.
git-svn-id: svn://localhost/ardour2/branches/3.0@3303 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-05-02 18:35:05 +00:00
Hans Baier
38eb5f4539 * renamed canvas-midi-event.* into canvas-note-event.*
* make MidiModel keep track of its CanvasProgramChange instances

git-svn-id: svn://localhost/ardour2/branches/3.0@3297 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-29 21:58:05 +00:00
Hans Baier
d3cc2981b0 * added new defaults for program change ui gtk2_ardour/ardour3_ui_default.conf
* reverted involuntarily committed changes

git-svn-id: svn://localhost/ardour2/branches/3.0@3296 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-29 12:51:10 +00:00
Hans Baier
c0d467f461 * added defaults for program change ui gtk2_ardour/ardour3_ui_default.conf
git-svn-id: svn://localhost/ardour2/branches/3.0@3295 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-29 12:38:46 +00:00
Hans Baier
58e569c9e1 * Renamed CanvasMidiEvent into CanvasNoteEvent
* changed MidiModel::write_to to include note off handling *and* time sorting

git-svn-id: svn://localhost/ardour2/branches/3.0@3294 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-29 08:37:53 +00:00
Hans Baier
6d319e2132 * first prototype of program changes UI show up correctly (see http://www.flickr.com/photos/24012642@N02/2451596190/)
git-svn-id: svn://localhost/ardour2/branches/3.0@3293 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-29 07:28:24 +00:00
fee712f221 fix crash when popping up redirect/processor menu
git-svn-id: svn://localhost/ardour2/branches/3.0@3289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-26 00:26:42 +00:00
Hans Baier
d9de6f2c4c * preliminary impl for PGM Change support in MidiModel
git-svn-id: svn://localhost/ardour2/branches/3.0@3283 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-24 15:04:56 +00:00
Hans Baier
b81fd9415e * disabled some debugging output
* make record buttons appear in MIDI mixer strips

git-svn-id: svn://localhost/ardour2/branches/3.0@3280 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-22 22:39:45 +00:00
Hans Baier
7afccaa9fe * fixed display bug: changing the height on tracks doesnt rescale CanvasHits
git-svn-id: svn://localhost/ardour2/branches/3.0@3278 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-21 16:42:55 +00:00
Hans Baier
c72bf18bf4 * persisting/restoring track channel settings works now
git-svn-id: svn://localhost/ardour2/branches/3.0@3276 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-21 15:10:13 +00:00
Hans Baier
f31abc5eaf * UI fixes for track channel selection
* implemented 'forcing midi events into a single channel'
* see http://www.flickr.com/photos/24012642@N02/2430165889/

git-svn-id: svn://localhost/ardour2/branches/3.0@3273 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-21 09:39:05 +00:00
Hans Baier
e8c2b6f371 * made notes whose channel is not selected in the track appear gray, see http://www.flickr.com/photos/24012642@N02/2429528120/
git-svn-id: svn://localhost/ardour2/branches/3.0@3272 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-20 22:33:13 +00:00
Hans Baier
20cfa08aea * gave the MIDI panic button a new home....
git-svn-id: svn://localhost/ardour2/branches/3.0@3270 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-19 11:49:05 +00:00
Hans Baier
d0cee9db09 * fixed display bug in track channel selector
git-svn-id: svn://localhost/ardour2/branches/3.0@3269 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-19 10:41:12 +00:00
Hans Baier
d8adfa49a6 * made channel selector look quite nice, see http://www.flickr.com/photos/24012642@N02/2425203856/ (still needs some work...)
git-svn-id: svn://localhost/ardour2/branches/3.0@3268 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-19 10:30:38 +00:00
Hans Baier
85c223da0d * first prototype for track based channel selection works
git-svn-id: svn://localhost/ardour2/branches/3.0@3267 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-19 02:11:11 +00:00
Hans Baier
accc73a8c1 * fixed missing get coordinate functions in CanvasHit
* Fixed crash bug when NoteMode = Percussive on MidiRegionView
* Fixed possible MemoryLeaks and added Signal in MidiMultipleChannelSelector

git-svn-id: svn://localhost/ardour2/branches/3.0@3263 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-17 21:27:33 +00:00
Hans Baier
7ba87f7672 * added All/None/Invert Buttons to MidiMultipleChannelSelector
* Added assertion at crash location introduced by latest merge in ProcessorBox::build_processor_menu: 

git-svn-id: svn://localhost/ardour2/branches/3.0@3260 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-17 10:27:03 +00:00
Hans Baier
0c66131fea * bugfix in midi editing: adding notes impossible after delete
git-svn-id: svn://localhost/ardour2/branches/3.0@3255 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-16 02:30:37 +00:00
Hans Baier
c4bdcb82af * fixed bug: crash because of invalidated iterator while removing midi notes from model
git-svn-id: svn://localhost/ardour2/branches/3.0@3253 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-15 23:00:06 +00:00
Hans Baier
8b3d298f6b * first working version of editing MIDI channels of individual notes, see: http://www.flickr.com/photos/24012642@N02/2412142661/
git-svn-id: svn://localhost/ardour2/branches/3.0@3252 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-14 06:23:11 +00:00
Hans Baier
aae8262a36 * persistent undo for MIDI edits works now
* fixed bug: dragging of notes beyond left region bounds made it disappear (unsigned int wrap around)

git-svn-id: svn://localhost/ardour2/branches/3.0@3249 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-11 15:49:52 +00:00
cb41314642 merge 3.0 from 2.0-ongoing@3243
git-svn-id: svn://localhost/ardour2/branches/3.0@3248 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-11 14:06:50 +00:00
Hans Baier
9228d5dc23 * removed possible memory leak / cause of crashes for midi editing
* fixed bug: after adding new notes, notes above/below region bounds appear

git-svn-id: svn://localhost/ardour2/branches/3.0@3237 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-08 21:44:13 +00:00
Hans Baier
e534334dce * bugfix: creating notes not sample accurate
* bugfix: resizing notes not sample accurate
* bugfix: resizing notes broken due to region resizing patch

git-svn-id: svn://localhost/ardour2/branches/3.0@3221 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-06 20:03:41 +00:00
Hans Baier
c1d5a721d2 * fixed broken note resizing and creation since region starts can be adjusted, moving notes still broken
git-svn-id: svn://localhost/ardour2/branches/3.0@3220 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-05 13:56:20 +00:00
Hans Baier
4ee42dc455 * Bugfix: resizing beginnings of MIDI regions did not work correctly (it shifted the region content right)
* Bugfix: resizing ends of MIDI tracks did not hide noted beyond region boundaries (in the moment only all notes with note_on >= region end are hidden, their note offs still may exceed region boundaries, but so much for now.....)

git-svn-id: svn://localhost/ardour2/branches/3.0@3219 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-05 09:47:07 +00:00
Hans Baier
549a8cb88b * bugfix: invisible midi ports in port matrix shown
git-svn-id: svn://localhost/ardour2/branches/3.0@3218 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-05 03:49:31 +00:00
Hans Baier
f960405614 * fixed segfault on MIDI Panic button
git-svn-id: svn://localhost/ardour2/branches/3.0@3212 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-04-03 22:12:25 +00:00