f9d6a7329c
use newly-public libsmf functions for variable length quantities to load+store MIDI note IDS. THIS BREAKS MIDI NOTE HISTORY IN ALL EXISTING SESSIONS
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7953 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-03 00:07:42 +00:00
a188e69aae
make VLQ save+restore functions publically accessible, for use with meta-events
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7952 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-11-03 00:06:42 +00:00
Carl Hetherington
f761f13f6b
Don't cut output rate of non-interpolated controllers.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-28 18:47:24 +00:00
Carl Hetherington
42a23312a0
Slightly hacky but functional fix for large quantities of MIDI output when interpolating sharp changes in controller value. Fixes #3476 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7840 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-24 14:05:20 +00:00
Carl Hetherington
b6eede26fa
Remove debugging code.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7834 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-23 22:54:47 +00:00
Carl Hetherington
a212e7eec9
Make sure that _get_vector writes a value to the output array even when veclen == 1. Fixes #3461 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7808 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-20 00:57:44 +00:00
aaf6ea8d28
Upgrade to latest autowaf.
...
Tidy up configure output.
git-svn-id: svn://localhost/ardour2/branches/3.0@7752 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-07 20:48:54 +00:00
98d994f29c
fix a variety of unused argument errors noted by gcc 4.3.2 on x86
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7733 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-02 17:01:36 +00:00
1526735d79
some (unfinished) work on incorporating Ben's rev 6919 changes regarding track selection; make newly selected tracks show the current range selection; fix crashes related to meter display; remove "all" group from main group tab display and just put it down in its own button (totally incomplete); minor cleanups
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7696 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-26 23:25:44 +00:00
6e904b1e16
3.0 version of rev 5564 from 2.x - basic boolean plugin parameter automation (no graphical editing intended). this involved adding a new "toggled" property to Evoral::Parameter
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7670 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-23 16:31:34 +00:00
Carl Hetherington
067c4458a0
Don't write undo records for automation that moves with regions when nothing changes about the automation.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-20 23:58:49 +00:00
Carl Hetherington
cdb3ade9ff
Fix automation re-load.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7664 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-20 23:58:09 +00:00
7b6b75f38f
forward port automation handling changes from 2.x, upto and including about rev 6981 (will need full testing in the 3.X context). as on 2.x, this removes real-time visual updates to automation curves during write/touch automation recording
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7653 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-19 21:09:40 +00:00
a4d9d09af5
forward port 2.X changes up to and including rev 6714
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7635 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-16 19:58:34 +00:00
Carl Hetherington
78986385e1
Fix save/load of MIDI automation state. Fixes #3354 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7578 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-09 22:23:23 +00:00
Carl Hetherington
5e3ca4db5c
Support cut / copy / paste of MIDI automation.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7545 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-05 13:36:38 +00:00
Carl Hetherington
623f37fd36
Fix test compile.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7516 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-28 00:42:43 +00:00
ece5093234
change Control::{set,get}_float to Control::{set,get}_double and make almost all Control-related stuff use double rather than random mixtures of float, double and some integer value ; make hans' program change stuff work quite a bit better (not finished yet) including keyboard edting of pgm change values
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7514 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-27 14:09:16 +00:00
Carl Hetherington
6a9758dbcc
Fix case where the working range for the interpolation can be chosen wrongly if start is after the cached point's time. Should fix #3356 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7495 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-25 23:20:31 +00:00
Carl Hetherington
2794eab6ae
Name evoral test target so that it can be build on its own.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7494 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-25 23:19:55 +00:00
Carl Hetherington
115083c13d
Remove end of SearchCache as it is not used (it's always set to DBL_MAX)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7493 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-25 23:19:43 +00:00
Carl Hetherington
93a3b1a221
Remove test that will never fire.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7489 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-25 01:47:18 +00:00
Carl Hetherington
963bc50a8b
Fix up evoral test suite.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7483 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-25 00:39:04 +00:00
c685724c80
step editing now accessed via a context menu on MIDI track rec-enable buttons. along the way, fixed up confusion between set_rec_enable() and set_rec_enabled() methods in Route/Track/Diskstream
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7482 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-24 16:40:56 +00:00
75fb4557e5
removed #if 0 code
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7461 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-21 17:46:45 +00:00
6ef49a0b86
force creation of MIDI (SMF) files on disk whenever an SMF object is created, to avoid "source exists but no file don disk exists" issue
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7459 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-21 13:02:58 +00:00
bf91ed99ec
add note IDs and use them for looking up notes during a history rebuild. NOTE: INVALIDATES OLDER HISTORY FILES
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7449 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-20 16:27:34 +00:00
c8e3f32533
newly created files for use in recording appear in a .stubs folder, and are moved out of it when recording stops
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7426 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-16 14:55:11 +00:00
Carl Hetherington
593b421180
A few fixes to interpolation of MIDI controller data. Don't interpolate
...
when writing these data back to a source, otherwise surprising new
interpolated points appear in MIDI automation. Similarly don't interpolate
when reading the model during MIDI stretch. Fix handling of interpolation state;
controllers that have been set by the user to use a different interpolation style
are noted in the <Source> tag of the session file and this state is sprayed around
to MidiModel and the GUI as necessary.
git-svn-id: svn://localhost/ardour2/branches/3.0@7409 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-14 00:58:15 +00:00
Carl Hetherington
d1b4599725
Mark Sequence as edited when one of its parent ControlSet's ControlLists is changed.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7404 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-12 00:41:45 +00:00
d3a4655ddd
allow zero length MIDI files again and remove debug output
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7347 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-01 15:02:18 +00:00
37978aa214
lots of details relating to MIDI file management; try to ignore ALSA sequencer MIDI ports named "Midi-Through"
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7305 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-26 13:45:59 +00:00
Carl Hetherington
ecb0cd5d11
Make MIDI region `automation' respect the automation mode so that it is
...
only played back if the automation mode is set to "Play". Munge AutoState
for AutomationRegionViews so that they reflect their AutomationTimeAxisView's
setting. Fixes #3135 .
git-svn-id: svn://localhost/ardour2/branches/3.0@7304 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-25 20:47:09 +00:00
f4401c5928
midway snapshot of work done on managing Region & Source lifetimes correctly. may fix missing MIDI file bug ; save empty playlists because they may be referred to by the history file ; undo commands auto-delete when objects they refer to die (currently not commands built from XML deserialization); Sources now know how many regions are using them for something, meaning that we know if we can delete the files holding any data for the source
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7291 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-23 20:14:07 +00:00
Carl Hetherington
40ffadf219
Return delta time even for metadata events. Should fix #3244 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7282 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-20 22:49:35 +00:00
c158c44fab
make note overlap resolution store side effects in a DiffCommand, and add its changes to the DiffCommand being executed, so as to retain "internal" note property changes across undo
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7256 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-14 23:43:10 +00:00
fddb377812
introduce the notion that note additions and property changes can cause the removal of other notes because of overlaps; merge Diff and Delta commands in MidiModel; fix marshalling of notes to avoid float->int conversion of length+time properties; initial implementation (not tested much so far) of different policies for how to handle note overlaps
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7254 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-12 13:55:22 +00:00
db1fa42f14
start tracking note overlaps while moving notes
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7228 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-03 21:27:36 +00:00
9208598c26
Sequence::contains() and Sequence::overlaps() now use pitch-based indexing to speed things up in pathological cases
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7221 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-03 15:58:15 +00:00
460d2d0675
add channel+pitch indexing for notes in a Sequence
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7217 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-02 19:55:37 +00:00
0cd3bd4f19
rationale pathways that add notes to Sequence<T> so that there is only final insertion step; when changing note properties that affect "indexing" within a Sequence<T> (i.e. via set<T,comparator> indexing/ordering/hashing), remove the note and add it back so that indexing stays consistent; fix marshalling of MidiModel::DiffCommand (boost::bind(&Object::method, reference_to_object) will COPY the reference, so use a pointer); fix MidiModel::find_note() to compare note properties not pointer addresses
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7203 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-01 20:40:45 +00:00
df99f37047
add missing (new) file
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7200 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-01 01:22:37 +00:00
db67064296
switch Evoral::Sequence debugging to use DEBUG_TRACE(); Sequence uses multiset<...,EarlierNoteComparator> for _write_notes, does FIFO note resolution for overlapping notes in SMF file; implement Sequence::overlaps() ... current use is uncertain; ARDOUR::coverage() uses 64bit framepos_t
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7199 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-31 19:47:15 +00:00
60ec5dd339
provide a generalized Sequence::get_notes()-by-predicate method, and prototypes for 2 future methods
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7191 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-28 21:36:38 +00:00
Carl Hetherington
d0d160e566
Fix crash on clear option for automation tracks ( #3195 ). Also fix state change signalling so that lines reappear on undoing a clear.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7178 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-27 12:26:00 +00:00
a196405da9
various minor MIDI fixes: prevent duplicate note entry with mouse, show note info more often with verbose cursor, fix some crashes from click+move on notes ... lots more where this comes from
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7128 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-20 22:38:12 +00:00
e258b2622a
MIDI region forking, plus Playlist::regions_to_read() fix forward ported from 2.X. region forking requires a few cleanups
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7118 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-19 03:03:28 +00:00
Carl Hetherington
f1114dedee
Move FileManager code into libpbd. Use it for SMF read/write.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7108 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-16 20:54:50 +00:00
Carl Hetherington
ed9d42c55d
Some comments and minor cleanup.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6988 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-26 00:22:26 +00:00
17088ee3ea
(1) remove most uses of MementoCommand for Playlist and Region (2) move frozen state from Region into Stateful, renamed "suspend property changes" (3) successive changes to a Property (scalar) after clear_history() do not keep resetting the old value (fixes region trim)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02 18:05:26 +00:00
fa701b8c06
change PropertyChange from a bitfield into a real object, with all the many widespread changes that causes
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6701 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-19 18:09:08 +00:00
ce7a5e1c9f
the Properties & 64bit region commit
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6695 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-18 13:59:49 +00:00
ea63af333e
fix up note names (from Don F, via SoftWerk)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6649 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-08 19:36:25 +00:00
Carl Hetherington
797cd64d12
Coding style.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6642 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-07 02:48:07 +00:00
Carl Hetherington
0e1c62150a
Remove some unnecessary includes.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6641 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-07 02:47:17 +00:00
Carl Hetherington
420e28f4d8
Coding style cleanups. Preserve mono state in XML for panners.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6640 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-07 02:45:55 +00:00
Taybin Rutkin
52b4b464f9
Merged revisions 6292,6294-6295,6311,6314 via svnmerge from
...
svn+ssh://ardoursvn@subversion.ardour.org/ardour2/branches/build_fixes
........
r6292 | trutkin | 2009-12-05 08:31:25 -0500 (Sat, 05 Dec 2009) | 1 line
remove scons build files
........
r6294 | trutkin | 2009-12-05 09:11:17 -0500 (Sat, 05 Dec 2009) | 2 lines
cairomm
remove unnecessary vendor libraries as we now rely on the developer to install them
........
r6295 | trutkin | 2009-12-05 09:12:54 -0500 (Sat, 05 Dec 2009) | 2 lines
soundtouch
remove unnecessary vendor libraries as we now rely on the developer to install them
........
r6311 | trutkin | 2009-12-05 23:38:49 -0500 (Sat, 05 Dec 2009) | 2 lines
glibmm2, gtkmm2, libgnomecanvasmm, sigc++2
remove unnecessary vendor libraries as we now rely on the developer to install them
........
r6314 | trutkin | 2009-12-06 09:15:49 -0500 (Sun, 06 Dec 2009) | 4 lines
remove scons referencing from Makefile
- TODO: should move cscope stuff to waf and get rid of the Makefile
........
git-svn-id: svn://localhost/ardour2/branches/3.0@6315 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-06 14:21:46 +00:00
1716d75f9f
Apply accurate copyright header.
...
Shrink.
git-svn-id: svn://localhost/ardour2/branches/3.0@5905 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-24 15:35:50 +00:00
f8fe64a91e
(FULL commit) start of a nominal debug tracing system, with 64 bits available for flags; track notes by region in MidiPlaylist, and resolve them if they are left hanging at region boundaries. note: MIDI playback is still not working 100% though its better now.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5903 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-24 13:26:56 +00:00
8340dcdd57
Unit test code coverage using lcov.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5892 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 17:30:11 +00:00
82a0c02af1
Fix controller iteration / linear interpolation.
...
Add unit test for controller iteration / linear interpolation.
git-svn-id: svn://localhost/ardour2/branches/3.0@5886 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 04:24:20 +00:00
653a487bbd
Fix whitespace.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5885 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 03:58:11 +00:00
f68f8839a5
Sshh.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5884 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 03:57:52 +00:00
7524b90985
Fix compilation with DEBUG_SEQUENCE on.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5883 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 03:32:54 +00:00
03b0d3f328
Testing how anal retentive I can be without anyone saying anything.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5882 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 02:53:47 +00:00
c78108a033
Fix yet more crazy tabs.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5881 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-23 02:49:12 +00:00
3fd5f15e26
Indentation.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5874 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 22:05:49 +00:00
f3a510ce34
More spacey tabs.
...
Can we please stop with the spacey tabs?
Thanks.
git-svn-id: svn://localhost/ardour2/branches/3.0@5873 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 22:04:43 +00:00
7b46e9c57c
Fix adding multiple notes with the same time stamp (geeze).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5872 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-22 21:54:32 +00:00
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
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
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
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
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
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
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
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
bb9cc45cd2
Strip trailing whitespace and fix other whitespace errors (e.g. space/tab mixing). Whitespace changes only.
...
Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red. I don't know the emacs equivalent...
git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14 16:10:01 +00:00
fa4e858eb3
do not allow smf_source's reads to stomp on cached read_end position in parent class, which creates chaos by being out of sync with MidiSource::_model_iterator. this doesn't totally fix MIDI playback, but it helps
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-16 01:08:51 +00:00
Carl Hetherington
7b14a4230b
Fix some warnings.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5663 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-15 15:23:59 +00:00
bf0a99f0c0
fix up marshall/unmarshall of note data for MidiModel::DiffCommand
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5662 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-14 16:01:32 +00:00
837bfc9af4
the start (only the start) of MIDI diff commands
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5637 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-06 18:11:55 +00:00
e7e071db1a
more MIDI editing tweaks ; flip mouse mode buttons around for MIDI so that "object" mode is the most likely mode for both region \& region editing ; frame handle events (from lincoln's region trimming patch) are now handled more explicitly
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5600 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-28 16:06:08 +00:00
3845af6ce9
lots of MIDI editing stuff. to be explained on the website when its done
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5596 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-27 03:09:30 +00:00
Carl Hetherington
dffd30baf9
Fix uninitialised member variable.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5570 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-23 18:31:34 +00:00
3162ffb4f4
move assignments out of assert() in editor_drag (thanks lincoln); change mouse mode buttons when in internal/MIDI mode; arrow key control of note velocity, value and position - hey look ma, MIDI editing!
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5539 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-17 15:58:47 +00:00
Carl Hetherington
902a087f15
Fix uninitialised variable.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5535 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-17 01:41:35 +00:00
0178875021
MIDI cut&paste round two (not done yet); a small region trim fix from lincoln s.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5517 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-13 01:57:03 +00:00
38510cb19e
install ardour.menus and bindings file (elthariel) ; initial, basic MIDI gain (fader) working
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5416 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-23 03:01:31 +00:00
3804e3bc49
Update autowaf.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5414 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-22 20:51:13 +00:00
Carl Hetherington
b65f8073ba
Fix some unused parameter warnings.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5403 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-21 15:55:17 +00:00
20342cf264
first part of fixing up send/return metering ; make send-controlling faders work ; fixes from 2.X for key editor and untranslatable string; use standard name for surfaces lib version in wiimote wscript
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5400 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-21 03:23:57 +00:00
Carl Hetherington
01217e64f8
Patch from agorka to add some includes required for building with the GCC shipped with Ubuntu Karmic.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-18 00:21:17 +00:00
7183242b8c
The great audio processing overhaul.
...
The vast majority of Route signal processing is now simply in the list of
processors. There are definitely regressions here, but there's also
a lot of things fixed. It's far too much work to let diverge anymore
regardless, so here it is.
The basic model is: A route has a fixed set of input channels (matching
its JACK input ports and diskstream). The first processor takes this
as input. The next processor is configured using the first processor's
output as input, and is allowed to choose whatever output it wants
given that input... and so on, and so on. Finally, the last processor's
requested output is used to set up the panner and create whatever Jack
ports are needed to output the data.
All 'special' internal processors (meter, fader, amp, insert, send) are
currently transparent: they read any input, and return the same set
of channels back (unmodified, except for amp).
User visible changes:
* LV2 Instrument support (tracks with both MIDI and audio channels)
* MIDI in/out plugin support
* Generic plugin replication (for MIDI plugins, MIDI/audio plugins)
* Movable meter point
Known Bugs:
* Things seem to get weird on loaded sessions
* Output delivery is sketchy
* 2.0 session loading was probably already broken...
but it's definitely broken now :)
Please test this and file bugs if you have any time...
git-svn-id: svn://localhost/ardour2/branches/3.0@5055 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-07 06:30:50 +00:00
d3d1e2c286
Strip trailing whitespace from waf scripts.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-04 22:10:15 +00:00
b034d9d05a
Maybe fix assertion crash.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5031 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-04 02:15:16 +00:00
3ae378a17c
Upgrade to waf 1.5.4.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-18 16:15:12 +00:00
Hans Baier
06a8d164da
libs/evoral/run-tests.sh: adapt to new global waf
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4973 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-12 22:29:05 +00:00
63189be1df
vestige-based VST support, back-ported from 2.0-ongoing
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4703 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-27 17:11:21 +00:00
903c0863d9
Waf: install stuff
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4702 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-27 04:40:44 +00:00
3bc71af0ca
Clean up checks.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-26 00:05:51 +00:00
0c0e689d3c
Waf building of gtk2_ardour.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4662 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 23:21:49 +00:00
8ad0123812
Make unit tests optional.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4658 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 19:08:26 +00:00
e0aaed6d65
*** NEW CODING POLICY ***
...
All #include statements that include a header that is a part of a library
bundled with ardour MUST use quotes, not angle brackets.
Do this:
#include "ardour/types.h"
NOT this:
#include <ardour/types.h>
Rationale:
This is best practice in general, to ensure we include the local version
and not the system version. That quotes mean "local" (in some sense)
and angle brackets mean "system" (in some sense) is a ubiquitous
convention and IIRC right in the C spec somewhere.
More pragmatically, this is required by (my) waf (stuff) for dependencies
to work correctly. That is:
!!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!!
Failure to comply is punishable by death by torture. :)
P.S. It's not that dramatic in all cases, but this (in combination with some
GCC flags specific to the include type) is the best way I have found to be
absolutely 100% positive the local ones are being used (and we definitely
want to be absolutely 100% positive on that one).
git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 18:26:51 +00:00
16d9776646
Move waf up to top level, waf building of pbd, evoral, midi++
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 17:51:42 +00:00
09f87d4f9f
Upgrade to waf 1.5.3.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4651 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 16:41:27 +00:00
75c15679bf
Only create a Curve for an AutomationList if we need it.
...
Fix crash on crossfade editor show (ticket 2442).
git-svn-id: svn://localhost/ardour2/branches/3.0@4641 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-19 19:42:25 +00:00
Hans Baier
96d62ba6b4
* FIXME in midi_util.h
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4615 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-17 16:42:17 +00:00
f219a53744
Fix deadlock and potential race condition when editing MIDI.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4614 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-17 06:09:37 +00:00
022818b4a7
Fix the horrible mess that was anything related to sources and paths.
...
Most significant changes:
- Factor out FileSource from AudioFileSource, use for SMFSource too
- Explicitly pass embedded rather than mysterious name mangling or whatever
- Destroy a ton of duplicated or very-nearly-duplicated code
- Clean up and document all that weird source stuff in session.cc
git-svn-id: svn://localhost/ardour2/branches/3.0@4609 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-17 02:11:49 +00:00
Sampo Savolainen
87c7b62103
Fix memory leak.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4606 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 19:06:27 +00:00
f12cfb3d87
Fix crash iterating over sequences with no controls (and Sequence iterator sanity in general).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4602 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 07:02:28 +00:00
0ef53a2d34
Fix crash on iteration over an empty sequence and/or recording controllers only.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4596 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 04:46:06 +00:00
93d7040d04
Fix deadlock issues.
...
Add IdentityConverter for when no conversion is actually needed.
git-svn-id: svn://localhost/ardour2/branches/3.0@4595 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 04:39:34 +00:00
3963d2b0b2
Move all beats <-> frames time conversion into a single object that can be passed around.
...
This has 3 main benefits:
- All conversion code is in one place (less duplication, potential bugs)
- The conversion method can be passed to things that are ignorant
of the actual time units involved, information required, etc.
(In the future it would be nice to have user selectable tempo/frame time)
- It should be relatively simple now to support tempo changes part-way
through a MIDI region (at least architecturally speaking)
git-svn-id: svn://localhost/ardour2/branches/3.0@4594 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 02:51:16 +00:00
fd1a3cfa4c
Gracefully ignore illegal MIDI events at the buffer level (i.e. from Jack).
...
Ardour should now be able to more or less tolerate crazy incoming MIDI (except for SYSEX).
git-svn-id: svn://localhost/ardour2/branches/3.0@4592 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 00:53:26 +00:00
85ab341795
Gracefully ignore illegal MIDI events.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4591 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 00:36:11 +00:00
473170200d
Rewrite Sequence::const_iterator.
...
Fixes crash bug when seeking back and forth from start to end of session.
Not sure about other things, but it makes a lot more sense now anyway...
git-svn-id: svn://localhost/ardour2/branches/3.0@4590 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-16 00:16:28 +00:00
72f2f6e47e
Clean up fugly debug printing stuff.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4588 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 22:10:32 +00:00
3cfb9126af
Fix crash on reading meta event.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4586 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 20:50:20 +00:00
59972b5550
Factor out region layering.
...
Correctly layer automation regions to match the stacking of their 'real' counterparts.
git-svn-id: svn://localhost/ardour2/branches/3.0@4585 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-15 20:31:05 +00:00
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
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
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
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
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
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
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
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
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
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