From 0f6ad823de05ce236f1dca2fc79865b03a0d5d55 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 1 Nov 2019 13:24:37 -0600 Subject: [PATCH] if looping, squish DiskReader::playback_sample into loop range --- libs/ardour/disk_reader.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libs/ardour/disk_reader.cc b/libs/ardour/disk_reader.cc index 35a6c6c00c..76afb6b00f 100644 --- a/libs/ardour/disk_reader.cc +++ b/libs/ardour/disk_reader.cc @@ -404,6 +404,12 @@ DiskReader::run (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_samp playback_sample += disk_samples_to_consume; } + Location* loc = _loop_location; + if (loc) { + Evoral::Range loop_range (loc->start(), loc->end() - 1); + playback_sample = loop_range.squish (playback_sample); + } + if (_playlists[DataType::AUDIO]) { if (!c->empty()) { if (_slaved) {