summaryrefslogtreecommitdiff
path: root/libs/ardour/diskstream.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/diskstream.cc')
-rw-r--r--libs/ardour/diskstream.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/libs/ardour/diskstream.cc b/libs/ardour/diskstream.cc
index ebd11a1887..a81c1e473d 100644
--- a/libs/ardour/diskstream.cc
+++ b/libs/ardour/diskstream.cc
@@ -260,6 +260,16 @@ Diskstream::set_capture_offset ()
_capture_offset = 0;
break;
}
+#ifdef MIXBUS
+ framecnt_t port_offset;
+ if (_track->mixbus_internal_bounce (port_offset)) {
+ /* _capture_offset may become negative, but the sum
+ * _capture_offset + existing_material_offset
+ * will be postive.
+ */
+ _capture_offset -= port_offset;
+ }
+#endif
DEBUG_TRACE (DEBUG::CaptureAlignment, string_compose ("%1: using IO latency, capture offset set to %2 with style = %3\n", name(), _capture_offset, enum_2_string (_alignment_style)));
}