13
0
livetrax/libs
David Robillard e781c1cf0d Fix MIDI loop recording.
This changes how things work a bit, but I am committing it for 3.0 since the
previous revision often crashed (and never worked), this one seems to work
fine, and the code is quite a bit more cogent.

I have tested the following use cases with live input and audible output:

 * Non-loop recording, armed before roll
 * Non-loop recording, arm while rolling
 * Loop recording, armed before roll
 * Loop recording, arm during roll

In the last case, the source/region is created starting at the loop start
rather than the current transport frame as usual so time makes sense when it
wraps around.

See the documentation added to the code for details, but the basic idea here is
to simply push MIDI events to the source with increasing monotonic time,
ignoring looping altogether.  Essentially we pretend the loop does not exist,
but the source knows all the details so it can implement whatever behaviour is
appropriate.

Currently, this is simply recording a complete non-destructive copy of the
input, which is a good thing.  Perhaps not what the user expects of loop
recording, but at least it works and is one sensible option.  We will need to
add more later.

Display while recording is a little bit wacky, but whatever.


git-svn-id: svn://localhost/ardour2/branches/3.0@13940 d708f5d6-7413-0410-9779-e7cbd77b26cf
2013-01-21 06:00:15 +00:00
..
appleutility
ardour Fix MIDI loop recording. 2013-01-21 06:00:15 +00:00
audiographer add copyright comments 2013-01-16 18:27:41 +00:00
clearlooks-newer
clearlooks-older
evoral Fix compilation with --test. 2013-01-20 18:23:42 +00:00
fst fix windows-VST/ALSA combination 2013-01-06 12:32:10 +00:00
gtkmm2ext fix issue with color and position of mixer strip plugin control sliders (#5275) 2013-01-17 22:33:08 +00:00
libltc merge robin gareus' libltc into ardour source tree for convenience 2012-12-14 16:18:47 +00:00
midi++2 Fix compilation with --test. 2013-01-20 18:23:42 +00:00
panners add copyright comments 2013-01-16 18:22:15 +00:00
pbd add copyright comments 2013-01-16 18:51:39 +00:00
qm-dsp
rubberband
surfaces a few small fixes that help pitchbend control of things, notably the shuttle controller. but note that basically, teh shuttle controller is completely and hopelessly broken through excess complexity and incorrect design 2013-01-17 14:48:17 +00:00
taglib
timecode fix drop-frame TC subframe rounding 2012-11-18 09:53:11 +00:00
vamp-plugins
vamp-sdk fix up discovery of VAMP plugins after ./waf install, which fixes crashes when reversing regions and doing timeFX operations with a "regular" install of ardour3 2012-12-18 15:26:50 +00:00
.cvsignore