From a6f95b21fc5e4c0b15ebdbcf16bf033009a0917f Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Mon, 4 May 2020 21:48:47 +0200 Subject: [PATCH] Fix alignment and de-click when monitoring changes while playing Previously it was possible that * declick_out = true, * target_gain == 0, cur_gain != 0 (fade out active) * speed != 0, disk_samples_to_consume > 0. So the disk-reader advanced the playback_sample, but since declick_out is active, the read from the ringbuffer was not committed. --- libs/ardour/disk_reader.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/libs/ardour/disk_reader.cc b/libs/ardour/disk_reader.cc index 250d5742bc..509808c1e7 100644 --- a/libs/ardour/disk_reader.cc +++ b/libs/ardour/disk_reader.cc @@ -333,6 +333,7 @@ DiskReader::run (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_samp ms = MonitorState (ms | MonitoringDisk); assert (result_required); result_required = true; + disk_samples_to_consume = 0; // non-committing read } else { _declick_offs = 0; }