Mirror of Ardour Source Code
Find a file
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
doc vague diagram on event loop/UI interactions 2012-04-24 17:15:37 +00:00
export new Ring Tone default export format 2012-10-08 19:47:03 +00:00
gtk2_ardour make height of name_label and name_entry the same to avoid button wierdness while track name editing; fix crash caused by nested calls to end_name_edit() 2013-01-21 01:37:44 +00:00
icons resize metronome icon to keep transport button sizes consistent 2012-11-12 19:36:34 +00:00
libs Fix MIDI loop recording. 2013-01-21 06:00:15 +00:00
manual Revert internals of the last layering-related commit, and go back a slightly-cleaned-up version of how it was before. Remove all layering modes; only option now is add-is-higher. Move-add-higher could easily be re-added if anyone uses it. 2011-12-29 22:14:15 +00:00
mcp new device profile for BCF2000 from James Roberts 2012-05-25 19:39:12 +00:00
midi_maps fix transport controls in Korg NanoControl binding map (from jaaxxone) 2012-07-09 21:30:53 +00:00
patches Add shared_ptr debugging patch, as I keep losing it. 2012-04-19 21:54:00 +00:00
patchfiles Comment out duplicate controls. I think there's an error in the manual? 2013-01-20 18:22:02 +00:00
templates Patch from Tim Mayberry to fix substitution and install of 2012-06-08 13:24:34 +00:00
tools get path correct for ardour_system.rc when building bundles 2013-01-16 16:57:42 +00:00
vst use new config vars 2012-05-24 14:51:08 +00:00
.dir-locals.el Only use .dir-locals.el to set tab indentation (or not, for python). 2011-04-06 16:33:43 +00:00
.gitignore Add a couple of things to .gitignore. 2012-04-18 22:27:49 +00:00
ardour-3.ttl Fix syntax error. 2009-11-09 14:13:59 +00:00
ardour.1 most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet 2008-12-12 14:43:24 +00:00
ardour.1.es most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet 2008-12-12 14:43:24 +00:00
ardour.1.fr most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet 2008-12-12 14:43:24 +00:00
ardour.1.ru most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet 2008-12-12 14:43:24 +00:00
ardour.dox remove whitespace (and test committing) 2012-01-21 04:25:53 +00:00
ardour_system.rc change default font scaling to 80% which makes a newly installed ardour come up with a window size just below 1080 2012-12-18 17:15:00 +00:00
ardour_system_sae.rc most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet 2008-12-12 14:43:24 +00:00
COPYING
instant.xml most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet 2008-12-12 14:43:24 +00:00
instant.xml.sae most of the 2.X->3.0 commit (up to rev 4299) except for gtk2_ardour/editor_canvas.cc; builds and runs and does a few specific things but expect it to be buggy for a while yet 2008-12-12 14:43:24 +00:00
Makefile (FULL) not-yet-complete JACK session management patch (TODO: get program name, vary snapshot name, arrange quit when necessary) 2010-04-02 18:54:33 +00:00
PACKAGER_README fixes for various consistency/settings issues in monitor section; minor edit to PACKAGER_README 2010-03-17 16:01:58 +00:00
README changes from 2.X starting in march 2009 through oct 20 2009 (5826 inclusive) 2010-03-16 15:33:04 +00:00
testfile.flac ogg/flac support bits and pieces; fix up MIDI note dragging and front-edge trims; BROKEN IN PERCUSSIVE MODE FOR NOW 2009-10-06 22:07:10 +00:00
testfile.ogg ogg/flac support bits and pieces; fix up MIDI note dragging and front-edge trims; BROKEN IN PERCUSSIVE MODE FOR NOW 2009-10-06 22:07:10 +00:00
TRANSLATORS correct dir spelling 2011-11-21 23:21:05 +00:00
waf updated waf to 1.6.11 plus an updated autowaf.py from drobilla, though modified (it should go into ardour svn, i think). the modifications include adding P_ to the list of keywords handled by intltool so that we can handle plural forms correctly (for i18n) 2013-01-04 16:04:07 +00:00
wscript new take on getting SVN revision number 2013-01-19 01:11:48 +00:00

Please see the Ardour web site at http://ardour.org/ for all documentation..

For information on building ardour: http://ardour.org/building.