13
0
Commit Graph

63 Commits

Author SHA1 Message Date
Hans Baier
3705a2d630 * MIDI control lanes: Set Interpolationtype according to Parameter
git-svn-id: svn://localhost/ardour2/branches/3.0@4452 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-28 04:55:31 +00:00
Hans Baier
5309c327ec * make MIDI-specific menu show up on all MIDI lanes
* style guide, comments and a little refactoring (remove duplication)


git-svn-id: svn://localhost/ardour2/branches/3.0@4422 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-21 10:20:27 +00:00
Hans Baier
33852a0728 * Added Menu to add a Program change parameter lane
* made adding automation lanes add them for every active channel on the track
* Evoral::Parameter.hpp: Strict weak ordering again: make the proof a bit easier to read
                         Make the implementation conform to the proof
                         order Parameters according to type, then channel, then id


git-svn-id: svn://localhost/ardour2/branches/3.0@4421 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-21 08:32:23 +00:00
Carl Hetherington
042997e5ed Cleanups and a few comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@4374 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-02 00:17:55 +00:00
Hans Baier
22d73333c6 * fixed missing track color mode persistence
git-svn-id: svn://localhost/ardour2/branches/3.0@4357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-29 01:02:41 +00:00
Hans Baier
c3636a8c61 * Made MIDI channel coloring work in the track channel selector
* added loudspeaker button to MIDI toolbar


git-svn-id: svn://localhost/ardour2/branches/3.0@4347 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-25 09:28:57 +00:00
Hans Baier
e2147fbc5b * implemented three coloring modes for MIDI tracks (untested yet)
git-svn-id: svn://localhost/ardour2/branches/3.0@4344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-24 01:24:49 +00:00
Hans Baier
30daaebaa2 * fixed memory allocation bugs
* commented out a crash line in ardour_ui2.cc (added a warning message).
  (I thought, it may be fairly efficient to keep issues as code instead of putting
  them in the tracker where hardly ever one would notice the needle in the haystack)
* forgot to clear two other collections on MidiPatchManager::refresh()


git-svn-id: svn://localhost/ardour2/branches/3.0@4312 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12 06:57:38 +00:00
Hans Baier
e009016b03 * added myself to about.cc
* created ArdourCanvas::CanvasFlag as a base class for flags
* removed obsolete cruft from midi_model
* made MidiTimeAxisView and MidiRegionView work together to display program changes as
  names by means of MidiPatchManager


git-svn-id: svn://localhost/ardour2/branches/3.0@4307 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-11 08:06:27 +00:00
Hans Baier
dfed4965b7 * make patch selection appear only when there are patches loaded
* add combobox to select CustomDeviceMode
* add code to resolve patch names by their msb, lsb and program change number


git-svn-id: svn://localhost/ardour2/branches/3.0@4306 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-10 10:54:45 +00:00
Hans Baier
f8480d6392 * moved /midi_patch_manager.* to libs/ardour
* GUI improvement: do away with the midi channel expander


git-svn-id: svn://localhost/ardour2/branches/3.0@4305 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-09 08:35:02 +00:00
Hans Baier
457f06855e * first working prototype of selecting instruments in the MIDI track header
* parsing patchfiles works


git-svn-id: svn://localhost/ardour2/branches/3.0@4304 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-09 07:42:19 +00:00
Hans Baier
a9bb336fc4 * first primitive implementation of MidiPatchManager
* some cosmetic changes
* added midi_patch_path() to libs/ardour/ardour/session_directory.h


git-svn-id: svn://localhost/ardour2/branches/3.0@4299 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-08 09:50:19 +00:00
6b0d22268b Normalize XML property name style, preserving old session loading (on load _ will be converted to -).
Still to go:  Non-consistent PBD tag names, colours.


git-svn-id: svn://localhost/ardour2/branches/3.0@3872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-05 23:14:48 +00:00
dca03d05cd Rename 'MIDI' drop down 'Channel' (actually describes what's in it).
Fix packing of MIDI track header so Channel is at the top.
Partially separate min-size-to-show-channel and min-size-to-show-keyboard values from the old hLargest etc. variables (towards sticking more widgets in the header dynamically).


git-svn-id: svn://localhost/ardour2/branches/3.0@3863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-05 02:32:05 +00:00
f3252f6585 Commit the colours I thought I was committing the last time.
git-svn-id: svn://localhost/ardour2/branches/3.0@3861 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-05 02:00:43 +00:00
b5ec66ae6c Can't call the wrong function when there's only one of them: remove ARDOUR::Parameter and just use Evoral::Parameter (move Ardour specific functionality to EventTypeMap where it belongs).
Less than pretty in places but easily seddable just in case...


git-svn-id: svn://localhost/ardour2/branches/3.0@3838 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-29 22:47:40 +00:00
909995338c Fix warnings.
Mostly fix MIDI track resizing wackiness (from torbenh).


git-svn-id: svn://localhost/ardour2/branches/3.0@3817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-27 18:07:37 +00:00
ffaf827d93 Eliminate a ton of unnecessary complete redrawing in MIDI stream views:
Only resize vertically (don't reaload model) on range changes.
Keep track of range in model while loading (writing to model), rather than double display MIDI regions to find out.
Don't go crazy and chew CPU blinking around and doing nothing on initial show of MIDI track context menu.
Change radio 'full range' and 'contents range' menu items to non-radio actions that just set the range appropriately.
Fix crashes on some esoteric case of control data I can't figure out, but fixed anyway, so I guess it all worked out well in the end for everybody.


git-svn-id: svn://localhost/ardour2/branches/3.0@3794 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-23 02:40:29 +00:00
a43d53e3b9 - Call channel pressure channel pressure, not aftertouch (that's key specific).
- Add context menu items to add a bender or pressure automation track to a MIDI track.
- Now just need to figure out creation of program change events and you can create
  everything MIDI ardour understands from the GUI...


git-svn-id: svn://localhost/ardour2/branches/3.0@3782 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-21 18:08:18 +00:00
e14187aadd Display recorded controller data (fix show all/existing automation).
git-svn-id: svn://localhost/ardour2/branches/3.0@3779 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-21 16:17:02 +00:00
7aea02083a Restore visible CC/etc automation tracks on session load.
Fix CC/channel mismatch when creating a new CC track.
Always display CC with 1-based numbering (like channel).


git-svn-id: svn://localhost/ardour2/branches/3.0@3763 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 17:24:52 +00:00
d357eca668 Factor out sequencing related things into an independant new library: "evoral".
Anything related to the storage of events/values over a range of time lives in evoral.
This includes MidiModel (Evoral::Sequence) and automation data (AutomationList (Evoral::ControlList),
	Automatable (Evoral::ControlSet), etc).
libs/evoral synced with http://svn.drobilla.net/lad/trunk/evoral r1511.


git-svn-id: svn://localhost/ardour2/branches/3.0@3754 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 00:47:49 +00:00
68e943265e merge from 2.0-ongoing @ 3581
git-svn-id: svn://localhost/ardour2/branches/3.0@3711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-10 15:03:30 +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
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
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
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
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
faf4e1d8e8 Clean up weird formatting from underlays patch.
Fix several memory (valgrind) errors in a vain attempt to fix crash on session close.


git-svn-id: svn://localhost/ardour2/branches/3.0@3105 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-22 01:45:29 +00:00
012292b4bd Less crash-happy MIDI reading on weird MIDI files.
Make "show existing automation" create/show automation tracks for all contained CC in MIDI tracks.
Fix staggered time when importing multi-track MIDI files.


git-svn-id: svn://localhost/ardour2/branches/3.0@3086 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-19 03:24:44 +00:00
1b65758557 Committed underlay support (from Audun).
git-svn-id: svn://localhost/ardour2/branches/3.0@3037 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-02-10 18:16:25 +00:00
b2e3b18dab Fix problem with notes occasionally not showing up at all.
git-svn-id: svn://localhost/ardour2/trunk@2919 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-15 03:32:51 +00:00
794917fca7 Install everything to *ardour3* instead of *ardour2*.
Fix initial display of keys and scroomer on new MIDI tracks.
Remove console barf.


git-svn-id: svn://localhost/ardour2/trunk@2909 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-13 21:34:04 +00:00
2db91c126e Apply MIDI keyboard and "scroomer" patch.
git-svn-id: svn://localhost/ardour2/trunk@2908 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-01-13 17:45:17 +00:00
a7fb6f897f Fix note range menu item initial value (it probably should be saved and restored though...).
git-svn-id: svn://localhost/ardour2/trunk@2449 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-11 02:24:54 +00:00
c190aca4a0 Deep "automation regions" support.
Fix zoom/height/etc changing for automation region views.
Broke smooth automation region dragging (make omelette, break eggs, etc).


git-svn-id: svn://localhost/ardour2/trunk@2424 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-09-06 02:30:39 +00:00
e486a8d86f Per-region MIDI CC "automation".
Extremely broken in several ways.
This commit brought to you by the letters D, R, and my need to switch machines.


git-svn-id: svn://localhost/ardour2/trunk@2323 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-08-17 17:25:20 +00:00
6e167cb1a8 Playback from MIDI model, playback of clicked-in events.
Note the diskstream chunk size affects reading of clicked-in, so you may need to seek away and back again to have new events read (this will be fixed).


git-svn-id: svn://localhost/ardour2/trunk@2183 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-28 07:09:21 +00:00
332a3d9813 Selection of visible note range (full range vs fit contents, selectable from midi track menu).
Added note pencil tool, mock note adding (notes can be added visually but don't yet play).
Reworked MidiModel to be notes w/ duration instead of realtime style MIDI events.
Moved layering (stacked/overlaid) from auto time axis down to route time axis since it applies
to MIDI tracks as well.


git-svn-id: svn://localhost/ardour2/trunk@2128 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-15 01:56:11 +00:00
68653307e6 Note modes: note, percussion.
Percussion tracks display diamonds.
	Separated/fixed MIDI and audio mode menus.
CC automation modes: discrete, line.
	Bar controllers follow setting (hard steps or line) on playback.
	Sent CC data is always discrete (line not implemented yet).
	Discrete tracks show no lines, and always show control points.
Separated ControlPoint from AutomationLine.
Added some basic information (range) to Parameter (to be fleshed out..).


git-svn-id: svn://localhost/ardour2/trunk@2123 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-07 03:19:04 +00:00
b942d3613e Fix 'live' CC sending of bar controllers after loading session (previously only worked when immediately created by user).
git-svn-id: svn://localhost/ardour2/trunk@2116 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-06 02:37:35 +00:00
cfe29a14ee Scale MIDI track vertical range to match widgest range of notes in child regions.
Fiddled with canvas theme a bit to make tempo more visible and probably annoy pure audio MIDI/tempo haters.
Fix track-specific-color display on mixer strips for MIDI tracks.


git-svn-id: svn://localhost/ardour2/trunk@2112 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-05 07:02:24 +00:00
2177f00841 Add AutomationControl::parameter() for terseness.
Future-proof automation track GUI 'extra' XML (<GUI><AutomationChild automation-id="gain"> instead of <GUI><gain> so Parameter.to_string isn't used as an XML node name).
Fix automation track controller bar shown/hidden state.
Fix automation track initial show bug.


git-svn-id: svn://localhost/ardour2/trunk@2103 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-04 00:39:00 +00:00
133a66920b s/ParamID/Parameter/
git-svn-id: svn://localhost/ardour2/trunk@2098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-03 18:39:09 +00:00
0da2977027 Pan automation/serialization fixes.
"Live" Midi CC sending from Midi CC automation track controllers.


git-svn-id: svn://localhost/ardour2/trunk@2097 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-07-03 02:37:24 +00:00