summaryrefslogtreecommitdiff
path: root/libs/ardour/session_export.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-07-07 15:52:22 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-07-07 15:52:22 +0000
commitdda3143dc76877657454dac0fde2f1cfad800c85 (patch)
treed8493d484a74f5cd4ce0ac881fc83966369a0b5b /libs/ardour/session_export.cc
parent3be87c2c91acf3cc238e3531cfed2638d6c1c7f2 (diff)
move to scons Clone everywhere rather than Copy; add Session::micro_locate() for ongoing work on video sync; debugging output for export precision problem; minor clean up to IO::find_possible_connection(); fix up a few signed/unsigned issues; make "feature lines" always be the right height as tracks resize; change version to 2.5
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3517 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_export.cc')
-rw-r--r--libs/ardour/session_export.cc20
1 files changed, 17 insertions, 3 deletions
diff --git a/libs/ardour/session_export.cc b/libs/ardour/session_export.cc
index 373f662eda..ecb5b13af8 100644
--- a/libs/ardour/session_export.cc
+++ b/libs/ardour/session_export.cc
@@ -443,6 +443,8 @@ Session::start_audio_export (AudioExportSpecification& spec)
spec.freewheel_connection = _engine.Freewheel.connect (sigc::bind (mem_fun (*this, &Session::process_export), &spec));
+ cerr << "Start export at pos = " << spec.pos << endl;
+
return _engine.freewheel (true);
}
@@ -510,6 +512,8 @@ Session::prepare_to_export (AudioExportSpecification& spec)
}
}
+ cerr << "Everybdy is at " << spec.start_frame << endl;
+
/* we just did the core part of a locate() call above, but
for the sake of any GUI, put the _transport_frame in
the right place too.
@@ -545,6 +549,10 @@ Session::process_export (nframes_t nframes, AudioExportSpecification* spec)
int ret = -1;
nframes_t this_nframes;
+ cerr << "Export process at pos = " << spec->pos << " _exporting = "
+ << _exporting << " running = " << spec->running << " stop = "
+ << spec->stop << endl;
+
/* This is not required to be RT-safe because we are running while freewheeling */
if (spec->do_freewheel == false) {
@@ -562,12 +570,14 @@ Session::process_export (nframes_t nframes, AudioExportSpecification* spec)
if (!_exporting) {
/* finished, but still freewheeling */
- process_without_events (nframes);
+ cerr << "\tExport ... not exporting yet, no_roll() for " << nframes <<endl;
+ no_roll (nframes, 0);
return 0;
}
-
+
if (!spec->running || spec->stop || (this_nframes = min ((spec->end_frame - spec->pos), nframes)) == 0) {
- process_without_events (nframes);
+ cerr << "\tExport ... not running or at end, no_roll() for " << nframes <<endl;
+ no_roll (nframes, 0);
return stop_audio_export (*spec);
}
@@ -616,6 +626,8 @@ Session::process_export (nframes_t nframes, AudioExportSpecification* spec)
}
}
+ cerr << "\tprocess " << nframes << endl;
+
if (spec->process (nframes)) {
goto out;
}
@@ -623,6 +635,8 @@ Session::process_export (nframes_t nframes, AudioExportSpecification* spec)
spec->pos += nframes;
spec->progress = 1.0 - (((float) spec->end_frame - spec->pos) / spec->total_frames);
+ cerr << "\t@ " << spec->pos << " prog = " << spec->progress << endl;
+
/* and we're good to go */
ret = 0;