diff options
author | Robin Gareus <robin@gareus.org> | 2020-05-04 21:48:47 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2020-05-04 21:48:47 +0200 |
commit | a6f95b21fc5e4c0b15ebdbcf16bf033009a0917f (patch) | |
tree | 7f7baaf852e78015494d916aab1b53def97f79eb /libs/ardour | |
parent | 744b85679b6eee691ecf288d60c66e41b7f071b3 (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/ardour')
-rw-r--r-- | libs/ardour/disk_reader.cc | 1 |
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; } |