diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2011-09-14 19:05:05 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2011-09-14 19:05:05 +0000 |
commit | a3ea8641e4be48a51ad7baaeb533865624a1e895 (patch) | |
tree | 0332e0492059457a9a055f3454c223b6ac617547 /libs/ardour/audio_track.cc | |
parent | 711d16a651a56d969a8cb8c0f0f9e30be418a912 (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.cc | 6 |
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; |