13
0
Commit Graph

2758 Commits

Author SHA1 Message Date
166395c96b Fix genererally retarded and broken note range / diskstream display / etc. related things (correctly display region contents on initial session load).
git-svn-id: svn://localhost/ardour2/branches/3.0@4583 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 19:44:27 +00:00
ecaf107ed3 The Big Change: Store time in MidiModel as tempo time, not frame time.
The time stamp of an event is now always tempo, from file to model and
back again.  Frame time is only relevant at playback or recording time,
in the audio thread (MidiModel and MidiBuffer).

I think perhaps we don't need to change the actual time from double (which is
convenient for math), it is the time base conversion that caused problems.
Using a correct equality comparison (i.e.  not == which is not correct for
floating point) should probably make the undo issues go away, in 99.99% of
cases anyway.

There's almost certainly some regressions in here somewhere, but they do not
seem to be time related.  The bugs I'm hitting in testing are old ones that
seem unrelated now, so it's checkpoint time.

This sets us up for fancy things like tempo map import and tempo/meter changes
halfway through MIDI regions, but for now it's still assumed that the tempo
at the start of the region is valid for the duration of the entire region.


git-svn-id: svn://localhost/ardour2/branches/3.0@4582 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 17:30:42 +00:00
425966a696 Make smf_track_get_next_event gracefully handle empty tracks.
git-svn-id: svn://localhost/ardour2/branches/3.0@4581 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 17:16:58 +00:00
4c9ec5c9c0 Commit of the century, right here.
git-svn-id: svn://localhost/ardour2/branches/3.0@4580 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 03:51:49 +00:00
64e69c36da Oops. Fix XML stuff in GUI as well.
git-svn-id: svn://localhost/ardour2/branches/3.0@4579 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 03:45:00 +00:00
789bd1d007 More contrast for MIDI notes.
git-svn-id: svn://localhost/ardour2/branches/3.0@4578 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 03:37:08 +00:00
9462374e29 Session XML style consistency (tag names are capitalized).
One thing left, this weird "end-marker-is-free" in <Config>.  Is this really a config option?  Anyone?


git-svn-id: svn://localhost/ardour2/branches/3.0@4577 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 03:21:30 +00:00
74ff55f835 Tidy, remove dead code.
git-svn-id: svn://localhost/ardour2/branches/3.0@4576 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 03:00:04 +00:00
4b3b7fa952 Tidy.
git-svn-id: svn://localhost/ardour2/branches/3.0@4575 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 02:36:15 +00:00
67ce82c9b4 Shutup.
git-svn-id: svn://localhost/ardour2/branches/3.0@4574 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 02:14:23 +00:00
0d7936d823 Cache file position in SMFSource::read_unlocked (i.e. don't seek to start and search every single time).
git-svn-id: svn://localhost/ardour2/branches/3.0@4573 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 02:09:58 +00:00
41ac4afff5 Clean up.
git-svn-id: svn://localhost/ardour2/branches/3.0@4572 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 01:53:06 +00:00
5d519f8bb1 De-templatify Evoral::SMF which has no concept of time other than SMF time.
git-svn-id: svn://localhost/ardour2/branches/3.0@4571 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 01:32:41 +00:00
5a48f99f72 Use nframes_t for timestamps of real (jack) time MIDI events (i.e. in MidiBuffer and MidiRingBuffer).
Use iterator interface of Sequence to read events in a MIDISource rather than Sequence::read, avoiding timestamp confusion.
Disable no longer useful Sequence::read.


git-svn-id: svn://localhost/ardour2/branches/3.0@4570 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 01:24:26 +00:00
aefa9f0938 Tidy.
git-svn-id: svn://localhost/ardour2/branches/3.0@4569 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 23:48:18 +00:00
de2681f7cd Remove superfluous typedefs.
Don't set range on sysex parameters (fix warning).


git-svn-id: svn://localhost/ardour2/branches/3.0@4568 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 23:41:05 +00:00
d0cc3120ae Make SMF::append_event_delta take a buffer and a size rather than an Event (no point, more generic, etc.).
git-svn-id: svn://localhost/ardour2/branches/3.0@4567 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 22:52:38 +00:00
ea37584cac Const correctness.
git-svn-id: svn://localhost/ardour2/branches/3.0@4566 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 22:49:25 +00:00
f8d171d297 Remove unused (and timestamp type nasty) last_event_time() from SMF.
I swear I already did this.


git-svn-id: svn://localhost/ardour2/branches/3.0@4564 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 22:40:55 +00:00
3d4d0477f6 While I'm doing trivial prettification things and not giving a damn about superficial divergence:
- Remove tab width assumption in struct members that looked atrocious at ts=4
- Line up function names for easier/faster readability


git-svn-id: svn://localhost/ardour2/branches/3.0@4563 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 22:32:36 +00:00
1fd221ed1c Line wrap at 100 lines so I can read things :).
Formatting changes only.


git-svn-id: svn://localhost/ardour2/branches/3.0@4562 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 22:27:17 +00:00
cdbb1f898e Update for libsmf API changes.
git-svn-id: svn://localhost/ardour2/branches/3.0@4561 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 22:23:40 +00:00
8249cfb6a7 Fix types to be warning clean on 64 bit.
git-svn-id: svn://localhost/ardour2/branches/3.0@4560 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 22:22:55 +00:00
464d3d3ab4 Update autowaf (fix mandatory header check).
git-svn-id: svn://localhost/ardour2/branches/3.0@4559 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 20:53:51 +00:00
80e54c6ea0 MIDI robustness.
- Separate SMF::open and SMF::create, more powerful interface for both.
- Correctly handle note ons with velocity 0 as note offs in sequence.
- Use SMF (i.e. libsmf) for MIDI import


git-svn-id: svn://localhost/ardour2/branches/3.0@4558 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 20:52:15 +00:00
Carl Hetherington
b0091c899b If a bundle's channel has no ports associated with it, you can't connect
it to anything; mark things up accordingly in the port matrix.


git-svn-id: svn://localhost/ardour2/branches/3.0@4557 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 20:17:45 +00:00
Carl Hetherington
9a3734a6bd Make DnD copy processors using their XML representations. Remove unused
copy constructors from the Processor hierarchy, and declare them private
to explicitly disallow copy construction.


git-svn-id: svn://localhost/ardour2/branches/3.0@4556 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 19:45:30 +00:00
b35f308894 Fix most absurd function name I've seen in a while.
git-svn-id: svn://localhost/ardour2/branches/3.0@4555 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 17:59:58 +00:00
b2a051f6c6 More powerful SMF::open interface.
git-svn-id: svn://localhost/ardour2/branches/3.0@4554 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 17:54:45 +00:00
d439459589 Remove abstract MIDIFile interface (maintaining interface with old crap was getting annoying).
git-svn-id: svn://localhost/ardour2/branches/3.0@4553 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 17:39:49 +00:00
5ffdf1857e LibSMF -> SMF
git-svn-id: svn://localhost/ardour2/branches/3.0@4552 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 17:35:34 +00:00
6314c69971 SMF -> OldSMF
git-svn-id: svn://localhost/ardour2/branches/3.0@4551 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 17:28:57 +00:00
Carl Hetherington
50d7d19614 Fix send copying by paste and drag n drop.
git-svn-id: svn://localhost/ardour2/branches/3.0@4550 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 17:28:01 +00:00
Hans Baier
e9fde9baa7 * second part of the last fix
git-svn-id: svn://localhost/ardour2/branches/3.0@4549 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 07:21:01 +00:00
Hans Baier
90ee153fc1 * fix concerning a comment on issue 2541: Go back to the last MIDI beat on stop
git-svn-id: svn://localhost/ardour2/branches/3.0@4548 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 07:18:38 +00:00
ef172d7ad6 Less weak plugin preset system (maybe AU preset stuff can use the 'normal' thing instead of being all weird now?).
LV2 preset support as implemented in svn calf plugins (experimental extension).


git-svn-id: svn://localhost/ardour2/branches/3.0@4547 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 03:28:12 +00:00
f609d97ccd Mandatory check for boost headers.
git-svn-id: svn://localhost/ardour2/branches/3.0@4546 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-14 01:00:15 +00:00
Hans Baier
92243228be *session.h whitespace
git-svn-id: svn://localhost/ardour2/branches/3.0@4545 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-13 08:29:23 +00:00
Hans Baier
f93ca1349c * Added CanvasSysEx class for displaying SysExes
git-svn-id: svn://localhost/ardour2/branches/3.0@4544 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-13 08:29:12 +00:00
Hans Baier
0800b59f61 * MIDIClock_Slave: fixed bugs:
- not synced to session.audible_frame() but to session.transport_frame()
	- failed asserts in song position


git-svn-id: svn://localhost/ardour2/branches/3.0@4543 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-13 08:29:01 +00:00
Hans Baier
bb1aa327f8 * MIDIClock_Slave: Fix for devices that always send MIDI clock (not just between start/stop)
git-svn-id: svn://localhost/ardour2/branches/3.0@4542 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-13 08:28:54 +00:00
Hans Baier
328691c9d1 * disabled debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@4541 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-12 23:28:58 +00:00
Hans Baier
e7c7c33563 * Evoral: SMFTest: added createNewFileTest (passes)
git-svn-id: svn://localhost/ardour2/branches/3.0@4540 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-12 23:28:51 +00:00
Hans Baier
9d33176b49 * Swapped MidiSource to LibSMF
* integrated libsmf into scons


git-svn-id: svn://localhost/ardour2/branches/3.0@4539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-12 23:28:32 +00:00
Hans Baier
b1cd183511 * MIDI clock slave: issues 2541 and 2542 ready for testing (cant test myself due to lack of hardware)
* tempo.cc/tempo.h: formatting / whitespace


git-svn-id: svn://localhost/ardour2/branches/3.0@4538 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-12 10:14:22 +00:00
Carl Hetherington
0522149d20 Fix segfault on:
1. move a region to a new track.
2. trim it.


git-svn-id: svn://localhost/ardour2/branches/3.0@4537 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 23:51:52 +00:00
550613a898 verbosity--
git-svn-id: svn://localhost/ardour2/branches/3.0@4536 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 20:47:40 +00:00
3d1b648130 Remove unused (and weirdly typed) time parameter from begin_write.
Fix append_event_unlocked shadowing.


git-svn-id: svn://localhost/ardour2/branches/3.0@4535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 20:37:22 +00:00
43c9e2a121 verbosity--
git-svn-id: svn://localhost/ardour2/branches/3.0@4534 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11 20:20:41 +00:00
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