13
0
Commit Graph

241 Commits

Author SHA1 Message Date
9579ea0801 StandardMIDIFile -> MIDIFile.
git-svn-id: svn://localhost/ardour2/branches/3.0@4533 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 20:15:25 +00:00
33bbc5cd84 Detect libsmf error and throw exceptions.
git-svn-id: svn://localhost/ardour2/branches/3.0@4532 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 17:59:33 +00:00
13bcd43423 Include stripped down libsmf code internally.
git-svn-id: svn://localhost/ardour2/branches/3.0@4531 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 17:38:40 +00:00
Hans Baier
947077c12e * introduced dependency: libsmf-1.2
* extracted Interface from SMF: StandardMIDIFile
* first implementation of StandardMIDIFile based on libsmf that passes basic test


git-svn-id: svn://localhost/ardour2/branches/3.0@4529 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 09:54:31 +00:00
Hans Baier
fe4e98a729 *Evoral: Sequence: forgot to commit that
git-svn-id: svn://localhost/ardour2/branches/3.0@4524 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 00:00:41 +00:00
Hans Baier
ce8065fea8 * Evoral::Sequence: conditional compile for debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@4522 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-10 23:57:52 +00:00
Hans Baier
494e7feec6 * Code readability: Template parameter <T> -> <Time>
git-svn-id: svn://localhost/ardour2/branches/3.0@4521 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-10 22:06:56 +00:00
Hans Baier
1872d48507 *Evoral::SMF fix reading/writing of SysEx Events
git-svn-id: svn://localhost/ardour2/branches/3.0@4517 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-10 08:43:35 +00:00
Hans Baier
9734fa3e93 * Sequence: added asserts
* sequence.cpp completed first test


git-svn-id: svn://localhost/ardour2/branches/3.0@4504 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-09 08:49:57 +00:00
Hans Baier
3d594b460b * Add SysEx Support to MidiModel / SMF
git-svn-id: svn://localhost/ardour2/branches/3.0@4492 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-06 20:31:00 +00:00
Hans Baier
db77cb9212 * more pleasant template parameter names in (MIDI)Event
git-svn-id: svn://localhost/ardour2/branches/3.0@4487 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-03 08:46:44 +00:00
Hans Baier
5c73fc42c4 * midi_event_size(uchar status): return size including status / handle sysex
git-svn-id: svn://localhost/ardour2/branches/3.0@4486 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-03 08:46:24 +00:00
166ef64e3d Make (MIDI) event time stamp type a template parameter.
git-svn-id: svn://localhost/ardour2/branches/3.0@4473 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02 02:36:05 +00:00
ead5dd4568 Tidy.
git-svn-id: svn://localhost/ardour2/branches/3.0@4472 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02 00:20:18 +00:00
Hans Baier
6fe0dc459e * enlage MidiBuffer size to 128 bytes to allow for sysex events
git-svn-id: svn://localhost/ardour2/branches/3.0@4462 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30 06:21:14 +00:00
Hans Baier
582555c337 * re-enable assertion about controller values (probably corrupt data in my Session)
git-svn-id: svn://localhost/ardour2/branches/3.0@4461 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30 00:27:02 +00:00
Hans Baier
a1234aa21e * loosened assertion about controller to UINT8_MAX allow for (real-world) nonstandard events
git-svn-id: svn://localhost/ardour2/branches/3.0@4458 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-29 00:18:20 +00:00
a5a3d39366 Remove nonsense comment.
git-svn-id: svn://localhost/ardour2/branches/3.0@4457 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-28 19:30:42 +00:00
Hans Baier
b04ead74ff * Set Discrete mode as default until Linear mode works properly
git-svn-id: svn://localhost/ardour2/branches/3.0@4455 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-28 09:49:42 +00:00
Hans Baier
d9416a3a6a * Fixed bug: Discrete control lists are generally not played back
git-svn-id: svn://localhost/ardour2/branches/3.0@4454 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-28 07:52:40 +00:00
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
c5aa717828 Sync with http://svn.drobilla.net/lad/trunk/evoral r1891.
(Only change: use #include "" instead of #include <> for local include paths).


git-svn-id: svn://localhost/ardour2/branches/3.0@4335 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-21 20:36:15 +00:00
Carl Hetherington
2ebb1af299 Implement #2425: option for automation to follow region moves.
git-svn-id: svn://localhost/ardour2/branches/3.0@4326 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-16 23:21:01 +00:00
Hans Baier
6c1f365515 * reenabled assertions after irc-ing with drobilla
git-svn-id: svn://localhost/ardour2/branches/3.0@4311 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12 05:21:06 +00:00
Hans Baier
ddbd296698 * converted two especially obnoxious assertions into warnings since they hinder my work and nobody seems to care about those issues anyway
git-svn-id: svn://localhost/ardour2/branches/3.0@4309 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-12 03:34:36 +00:00
Hans Baier
2f07b77503 * added XML deserialisation for control and program changes
* added pointer checks
* fixed typos in comments


git-svn-id: svn://localhost/ardour2/branches/3.0@4234 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-11-22 15:40:19 +00:00
1d4b3c2f05 fix nasty bug in evaluation of final step of interpolated Curve values
git-svn-id: svn://localhost/ardour2/branches/3.0@4085 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-11-03 07:41:53 +00:00
1514039689 Fix pollution of global namespace by Evoral.
git-svn-id: svn://localhost/ardour2/branches/3.0@3947 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-10-13 02:43:14 +00:00
9a30bb2aec Separate low level details of SMF reading/writing from concept of 'midi source in ardour'.
git-svn-id: svn://localhost/ardour2/branches/3.0@3839 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-30 00:45:26 +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
598c3cc958 Fix shadowing problem with *Control::set_value.
Fix nasty situation when setting value on a plugin automation control that's playing back.


git-svn-id: svn://localhost/ardour2/branches/3.0@3823 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-28 21:20:43 +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
9aad7b5727 Speed up MIDI import (and non-cached cases of ControlList::eval) by a factor of roughly eleventy billion.
git-svn-id: svn://localhost/ardour2/branches/3.0@3790 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-22 17:47:21 +00:00
a23d6cd50c Fix loading midi controller data.
git-svn-id: svn://localhost/ardour2/branches/3.0@3788 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-22 16:59:32 +00:00
a2d2f738cb Move event specific ringbuffer stuff to evoral.
Sane event type interface between evoral and libardour (no more shared magic numbers).
Cleanup Evoral::Sequence iterator, fix bugs, probably introduce new ones.
Move MIDI specific event functions to Evoral::MIDIEvent (is-a Evoral::Event).


git-svn-id: svn://localhost/ardour2/branches/3.0@3785 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-22 16:28:02 +00:00
ca12fe9733 Fix CC interpolation (i.e. output a maximum reslution stream of CC for a line segment).
git-svn-id: svn://localhost/ardour2/branches/3.0@3781 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-21 17:11:11 +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
6f8cd63450 chris goddard's region list patch; port 2.X marker drag/move changes to 3.0; compilation fixes-post-evoral
git-svn-id: svn://localhost/ardour2/branches/3.0@3760 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 14:38:46 +00:00
60f588f21d Fix parameter range stuff and automation time axis height (somewhat...).
Create a new AutomationLine when an AutomationRegionView without a line is clicked.


git-svn-id: svn://localhost/ardour2/branches/3.0@3757 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-19 06:30:49 +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