Paul Davis
a8237f1aed
make switching between input+disk monitoring work "right" for MIDI tracks; also fix a bug that led to messages about notes already being on at program start because of a double seek with no read in between
...
git-svn-id: svn://localhost/ardour2/branches/3.0@12762 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-06-18 19:20:59 +00:00
David Robillard
27a1cf2cf7
Compile cleanly with clang.
...
To compile Ardour with LLVM/clang, do the usual thing but set the CXX and CC
environment variables, e.g.:
CC=/usr/bin/clang CXX=/usr/bin/clang++ ./waf configure build
git-svn-id: svn://localhost/ardour2/branches/3.0@12418 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24 02:54:10 +00:00
Paul Davis
5558b3cf06
a grab bag of changes correcting and improving the way MIDI note on/off tracking is done. may/should fix a number of problem with spurious note-offs under a variety of circumstances
...
git-svn-id: svn://localhost/ardour2/branches/3.0@11074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-12-26 17:01:31 +00:00
Paul Davis
0f7e423422
fix incorrect use of MidiBuffer::reserve() and MidiBuffer::write() if channel mask discards a MIDI event ( fixes #4138 )
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9811 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-07-08 17:50:02 +00:00
Paul Davis
be614d0538
change default overlapping note strategy to "relax" (i.e. do nothing); fix crash when looping with MIDI data; add back note-off resolution at loop point (if it was actually there) so that notes are turned off (but don't forget Ye Olde Sustain Pedal/Controller) when looping; minor other non-functional tweaks
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9753 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-21 21:29:22 +00:00
David Robillard
a473d630eb
Fix broken whitespace. I'd apologize for the compile times if it was my fault :D
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-06-01 16:50:12 +00:00
Paul Davis
0a9f5423f5
detect buffer "overflow" when delivering immediate events and queue remainder for delivery next time (though without actually requeing - just leave ringbuffer ptrs/indexes where they are. required some deep but minor changes in how MidiRingBuffer::read() works, so that we can detect if we're going to be able to deliver an event before we actually read any of its data. Peek FTW!
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9629 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-05-29 17:35:21 +00:00
David Robillard
71222c2e6e
Fix broken whitespace (no functional changes).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9289 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04 23:00:48 +00:00
Paul Davis
ab376e10a7
reimplement MidiRingBuffer::dump()
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9283 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-04 21:43:40 +00:00
Paul Davis
ea9979b4b9
remove Evoral::RingBuffer, which was (a) duplicating PBD::RingBufferNPT and (b) broken; replace it with PBD::RingBufferNPT
...
git-svn-id: svn://localhost/ardour2/branches/3.0@9212 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-26 19:01:12 +00:00
Carl Hetherington
bc84cb7479
Make a couple of bits of debug conditional to avoid mallocs when they are turned off.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8492 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-10 17:31:43 +00:00
Carl Hetherington
73192bc1a7
Remove all use of nframes_t.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@8166 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-12-03 22:26:29 +00:00
Carl Hetherington
cf4091a03a
Fix assert. Remove some debug output.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-09-23 21:48:17 +00:00
Carl Hetherington
8502e50377
Hopefully fix dropped MIDI notes on loop. Fixes #3133 .
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7613 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-08-13 02:13:03 +00:00
Paul Davis
1e728e728a
basically, fix all kinds of odds and ends with MIDI playback, including missed notes and applying gain
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7247 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-09 13:00:54 +00:00
Carl Hetherington
5fd862ebc5
Small cleanup.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7242 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-08 01:21:24 +00:00
Carl Hetherington
e67a6d8989
Update ring buffer read pointer correctly in case of a failure to insert an event into the MidiBuffer.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@7241 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-08 01:21:01 +00:00
Paul Davis
db8b575c30
the mega-properties/SequenceProperty patch. split is broken at present (right hand starts has start-in-source of zero)
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02 00:00:00 +00:00
Paul Davis
738387f9a4
remove a couple of boost::signals2 trouble spots; fix some --strict compile time warnings
...
git-svn-id: svn://localhost/ardour2/branches/3.0@6378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-20 16:50:41 +00:00
Paul Davis
de5e463904
make per-region note-tracking in MidiPlaylist work correctly, or something very close to it. note that locking isssues remain when regions (and thus note trackers) are removed
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5912 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-25 14:42:46 +00:00
David Robillard
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
Paul Davis
ddf532a655
(full commit): fix MIDI playback by not writing into the playback buffer from MidiDiskStream::process() unless recording. This has a negative impact on "monitoring" MIDI, but that needs a different, somewhat more expansive solution anyway
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5685 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-09-21 15:43:11 +00:00
Paul Davis
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
Paul Davis
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
Paul Davis
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
David Robillard
9faf3bd048
Fix crash when playing back MIDI within a loop.
...
Fixes mantis issue #0002570 .
git-svn-id: svn://localhost/ardour2/branches/3.0@5052 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-05 02:04:56 +00:00
David Robillard
848df74e58
Fix MIDI playback.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@5024 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-01 17:32:48 +00:00
David Robillard
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
David Robillard
2f6327c113
Disable excessive console output (please comment this stuff before committing...).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4479 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02 15:51:19 +00:00
Hans Baier
018fff15ef
* fix misleading/wrong comment
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4477 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02 09:10:26 +00:00
Hans Baier
858f0cb5ab
* debugging output
...
* style guide
git-svn-id: svn://localhost/ardour2/branches/3.0@4476 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02 08:50:36 +00:00
David Robillard
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
David Robillard
44ac5f5097
Removed fixed/maximum event size assumption/limitation from MIDI buffer.
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4471 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-01 21:04:12 +00:00
David Robillard
8cbbfa4159
Fix immediate event delivery (panic button, controller sliders, etc).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4353 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-27 19:52:02 +00:00
David Robillard
487de9741b
Move MidiRingBuffer::read into .cc file to avoid the 2 hour dev cycle (no functional changes).
...
git-svn-id: svn://localhost/ardour2/branches/3.0@4352 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-12-27 18:39:11 +00:00