summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/ardour/ardour/session.h1
-rw-r--r--libs/ardour/session_transport.cc6
2 files changed, 7 insertions, 0 deletions
diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h
index 3175168958..d71134db7e 100644
--- a/libs/ardour/ardour/session.h
+++ b/libs/ardour/ardour/session.h
@@ -504,6 +504,7 @@ public:
samplecnt_t worst_input_latency () const { return _worst_input_latency; }
samplecnt_t worst_route_latency () const { return _worst_route_latency; }
samplecnt_t worst_latency_preroll () const;
+ samplecnt_t worst_latency_preroll_buffer_size_ceil () const;
PBD::Signal0<void> LatencyUpdated;
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index e41eb59a0f..01bdcea7cb 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -1675,6 +1675,12 @@ Session::worst_latency_preroll () const
return _worst_output_latency + _worst_input_latency;
}
+samplecnt_t
+Session::worst_latency_preroll_buffer_size_ceil () const
+{
+ return lrintf (ceil ((_worst_output_latency + _worst_input_latency) / (float) current_block_size) * current_block_size);
+}
+
void
Session::unset_play_range ()
{