summaryrefslogtreecommitdiff
path: root/libs/ardour/audio_track.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2011-09-14 19:05:05 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2011-09-14 19:05:05 +0000
commita3ea8641e4be48a51ad7baaeb533865624a1e895 (patch)
tree0332e0492059457a9a055f3454c223b6ac617547 /libs/ardour/audio_track.cc
parent711d16a651a56d969a8cb8c0f0f9e30be418a912 (diff)
back-port Ardour3's capture alignment code to Ardour2, to get correct results with the new JACK latency API
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@10085 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audio_track.cc')
-rw-r--r--libs/ardour/audio_track.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/libs/ardour/audio_track.cc b/libs/ardour/audio_track.cc
index 96405c8267..e442613aa1 100644
--- a/libs/ardour/audio_track.cc
+++ b/libs/ardour/audio_track.cc
@@ -612,7 +612,6 @@ AudioTrack::roll (nframes_t nframes, nframes_t start_frame, nframes_t end_frame,
if ((dret = diskstream->process (transport_frame, nframes, can_record, rec_monitors_input)) != 0) {
silence (nframes);
-
return dret;
}
@@ -668,7 +667,7 @@ AudioTrack::roll (nframes_t nframes, nframes_t start_frame, nframes_t end_frame,
/* first time through just copy a channel into
the output buffer.
*/
-
+
for (nframes_t xx = 0; xx < nframes; ++xx) {
bufs[i][xx] = b[xx] * scaling;
}
@@ -686,7 +685,7 @@ AudioTrack::roll (nframes_t nframes, nframes_t start_frame, nframes_t end_frame,
/* for all remaining channels, sum with existing
data in the output buffers
*/
-
+
Session::mix_buffers_with_gain (bufs[i%blimit], b, nframes, scaling);
if (n < diskstream->n_channels()) {
@@ -727,6 +726,7 @@ AudioTrack::roll (nframes_t nframes, nframes_t start_frame, nframes_t end_frame,
} else {
/* problem with the diskstream; just be quiet for a bit */
silence (nframes);
+
}
return 0;