13
0
Commit Graph

1521 Commits

Author SHA1 Message Date
382a79eda5 Remove linear search when adding/removing a note from/to a Sequence.
git-svn-id: svn://localhost/ardour2/branches/3.0@5870 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 21:33:05 +00:00
78b00fa6dc Actually load MIDI data from disk on session load (kludgey, forces model to always be loaded, this needs fixing later).
Fix hilariously braindead non-lock in SMFSource::load_model.


git-svn-id: svn://localhost/ardour2/branches/3.0@5869 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 21:03:47 +00:00
11f448917f Fix deadlocks on MIDI record.
More locking than is strictly necessary, but the assertion in MidiModel::write_lock is a nice check, at least for now...


git-svn-id: svn://localhost/ardour2/branches/3.0@5868 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 20:37:24 +00:00
f820456bb7 Use info stream for infoey things.
git-svn-id: svn://localhost/ardour2/branches/3.0@5866 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 20:05:40 +00:00
7919491f27 Use a more reasonable default size for log window.
Only pop up log window if message level is not INFO (i.e. iff it is WARNING, ERROR, or FATAL).


git-svn-id: svn://localhost/ardour2/branches/3.0@5865 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 20:05:15 +00:00
02f2755e60 Fix colours of log window messages.
If anyone has a better way of making this actually work than the absurd kludge in gtk_ui.cc, feel free.


git-svn-id: svn://localhost/ardour2/branches/3.0@5864 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 19:53:22 +00:00
b3a80523d3 Fix whitespace.
git-svn-id: svn://localhost/ardour2/branches/3.0@5863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 19:00:40 +00:00
7363b3cea0 Add log window to windows menu.
git-svn-id: svn://localhost/ardour2/branches/3.0@5861 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 18:11:22 +00:00
155338d168 Defer plugin discovery until actually needed (significant startup time improvement, especially with LV2).
git-svn-id: svn://localhost/ardour2/branches/3.0@5859 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 17:17:34 +00:00
d98c8e8fa4 Replace horribly error-prone Sequence/MidiModel/MidiSource locking API with scoped locks that automatically Do The Right Thing.
Make Sequence::read_lock const correct in the process (a read lock can be taken out on a const Sequence, but not a write lock).


git-svn-id: svn://localhost/ardour2/branches/3.0@5857 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 16:15:36 +00:00
2eed368c24 Sshh.
git-svn-id: svn://localhost/ardour2/branches/3.0@5856 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 16:14:00 +00:00
33da74c8e3 Fix MidiBuffer::merge_in_place and add aggressive correctness checking.
git-svn-id: svn://localhost/ardour2/branches/3.0@5854 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 14:46:47 +00:00
a7c37f6a2d Fix repeated linear search on read when cached model iterator reaches end.
git-svn-id: svn://localhost/ardour2/branches/3.0@5853 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 14:46:03 +00:00
7a2a37ad50 remember to reset inm1 each time around the interpolation loop
git-svn-id: svn://localhost/ardour2/branches/3.0@5852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 13:29:09 +00:00
24035e24e8 Fix compilation with -DDEBUG_MIDI_CLOCK
git-svn-id: svn://localhost/ardour2/branches/3.0@5851 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 22:25:46 +00:00
4b01242df1 Fix failed assertion when end_write is called multiple times.
Bad logic, but oh well, doesn't hurt.


git-svn-id: svn://localhost/ardour2/branches/3.0@5850 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 22:21:44 +00:00
97c695735f Merge all BufferSet iterators using a single template (way less duplicatedish code).
git-svn-id: svn://localhost/ardour2/branches/3.0@5845 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 17:24:14 +00:00
046f802662 Fix unnecessarily type specific code, tidy, fix whitespace.
git-svn-id: svn://localhost/ardour2/branches/3.0@5844 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 16:56:58 +00:00
86a09c58e3 Fix O(n) search on MIDI rec region update (now O(log(n)) per update, but could be O(1) with caching...)
git-svn-id: svn://localhost/ardour2/branches/3.0@5843 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 16:39:39 +00:00
2c59ddede5 Fix MIDI rec regions.
git-svn-id: svn://localhost/ardour2/branches/3.0@5842 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 16:26:18 +00:00
20f7592fab Fix MIDI thru, though why this is any different from audio (monitoring) I don't know.
git-svn-id: svn://localhost/ardour2/branches/3.0@5837 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:53:26 +00:00
Carl Hetherington
e1980eb495 Fix creation of plugin presets.
git-svn-id: svn://localhost/ardour2/branches/3.0@5836 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:21:02 +00:00
bc56eb8bd7 Fix unused parameter warnings since GCC apparently doesn't feel like listening to -Wno-unused-parameter
git-svn-id: svn://localhost/ardour2/branches/3.0@5835 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:15:42 +00:00
af8c16cfe0 Disable excessive debug printing.
git-svn-id: svn://localhost/ardour2/branches/3.0@5834 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:00:56 +00:00
214a31bb98 Fix various MIDI control and installation issues:
* Install ardour3_ui_default.conf to system config dir

 * Set -DDATA_DIR etc. defines to proper absolute paths

 * Set default MIDI control port name to "control"
   (it was "control" some places, "default" other, so the generic MIDI
   control surface didn't work.  The real problem here is probably that
   the name is hardcoded in the surface code, ick)

 * Install surfaces to correct system directory

 * Generate and install ardour_system.rc

User POV:

 * Installed versions not run from the source directory discover configuration
   files and surfaces, and generally work

 * Building and/or starting a fresh copy of ardour3 with no pre-existing
   configuration will run an ardour with a single MIDI "control" port, which
   you can plug a surface into and control MMC and controllers and such
   (after turning on the generic MIDI surface, which IMO should be loaded
    by default anyway, especially since it's no longer in a menu)


git-svn-id: svn://localhost/ardour2/branches/3.0@5833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 23:43:19 +00:00
6bef95806e Fix crash with input (not duplex) control MIDI ports.
git-svn-id: svn://localhost/ardour2/branches/3.0@5829 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 22:33:08 +00:00
Carl Hetherington
271f298635 Since add_property creates new XMLProperty objects, remove_property should probably delete them. Although remove_property is only used in one place in Ardour that I can see.
git-svn-id: svn://localhost/ardour2/branches/3.0@5824 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 18:44:44 +00:00
b488867f32 handle searching for a note in an empty note list
git-svn-id: svn://localhost/ardour2/branches/3.0@5822 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 12:16:30 +00:00
0def2d2d82 Tidy.
git-svn-id: svn://localhost/ardour2/branches/3.0@5821 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 02:26:25 +00:00
958fe26790 Tidy.
git-svn-id: svn://localhost/ardour2/branches/3.0@5820 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 02:17:28 +00:00
ed3b46e03b Factor out more duplicated code.
git-svn-id: svn://localhost/ardour2/branches/3.0@5819 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 02:14:53 +00:00
22fd9aec55 Factor out duplicated code in AudioDiskstream and MidiDiskstream.
git-svn-id: svn://localhost/ardour2/branches/3.0@5818 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 02:01:26 +00:00
55ba5c60b3 Implement out-of-place MidiBuffer::merge.
Completely untested.


git-svn-id: svn://localhost/ardour2/branches/3.0@5817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 01:50:15 +00:00
09990dd26d Use a template to merge PortSet::iterator and PortSet::const_iterator duplicated code.
git-svn-id: svn://localhost/ardour2/branches/3.0@5816 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 01:32:34 +00:00
ac8b165644 Const-correct BufferSet.
git-svn-id: svn://localhost/ardour2/branches/3.0@5815 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 01:24:31 +00:00
61c508f3c0 Only build unit tests if configure --test is passed.
git-svn-id: svn://localhost/ardour2/branches/3.0@5814 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 01:07:15 +00:00
Carl Hetherington
9155aca8c2 Tidy up the popup region editor and fix a few bugs with it; should close mantis 2601 and 2602.
git-svn-id: svn://localhost/ardour2/branches/3.0@5813 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 01:05:33 +00:00
089d75e8a8 Whitespace.
git-svn-id: svn://localhost/ardour2/branches/3.0@5812 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 00:50:43 +00:00
Carl Hetherington
918fb68a03 Fix memory leak.
git-svn-id: svn://localhost/ardour2/branches/3.0@5806 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 17:44:20 +00:00
539a692b0e track notes at the region level in MidiPlaylist; resolve them (deliver note offs) if a note spans the end of the region
git-svn-id: svn://localhost/ardour2/branches/3.0@5804 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 17:05:22 +00:00
a86b994c68 Logarithmic note seek for Sequence iterator.
git-svn-id: svn://localhost/ardour2/branches/3.0@5803 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 16:23:08 +00:00
70ad8b059a Better test for iterator seek.
git-svn-id: svn://localhost/ardour2/branches/3.0@5802 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 16:14:55 +00:00
0a9b982620 Add unit test for Sequence iterator seeking.
git-svn-id: svn://localhost/ardour2/branches/3.0@5801 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 16:09:20 +00:00
5c1dccaca5 Use logarithmic search for MidiModel::find_note (used by DiffCommand).
git-svn-id: svn://localhost/ardour2/branches/3.0@5800 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 15:44:58 +00:00
a2c434d5cd Fix insane formatting/whitespace in evoral test stuff. C'mon Hans ;)
git-svn-id: svn://localhost/ardour2/branches/3.0@5799 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 15:26:56 +00:00
cb8407d26f Use set over vector for Sequence::Notes, for logarithmic search by time.
git-svn-id: svn://localhost/ardour2/branches/3.0@5798 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 15:23:42 +00:00
Carl Hetherington
7b94110c54 Add mono switch to mixer strips (mantis 1068)
git-svn-id: svn://localhost/ardour2/branches/3.0@5797 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 14:46:15 +00:00
16e993e514 Tidy.
git-svn-id: svn://localhost/ardour2/branches/3.0@5796 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 14:13:03 +00:00
8d4bf70c7e Fix set_notes prototype to use typedef.
Fix spacey tabs.


git-svn-id: svn://localhost/ardour2/branches/3.0@5795 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 14:08:20 +00:00
52607dd6ef Fix warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@5794 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 14:06:54 +00:00