summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2020-05-04 21:48:47 +0200
committerRobin Gareus <robin@gareus.org>2020-05-04 21:48:47 +0200
commita6f95b21fc5e4c0b15ebdbcf16bf033009a0917f (patch)
tree7f7baaf852e78015494d916aab1b53def97f79eb /libs
parent744b85679b6eee691ecf288d60c66e41b7f071b3 (diff)
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.
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/disk_reader.cc1
1 files changed, 1 insertions, 0 deletions
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;
}