summaryrefslogtreecommitdiff
path: root/libs/ardour/disk_reader.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-09-30 05:35:12 +0200
committerRobin Gareus <robin@gareus.org>2017-09-30 05:35:12 +0200
commit61f8e53b7e88d961bffd1d8e3d4bb7cb5c7333cc (patch)
treec7b5e89c32341c1c4de1447bd68f15044736eabe /libs/ardour/disk_reader.cc
parent5ada17eba0195d90f0685776251b384efdf5168e (diff)
Disk-reader don't silence buffers when not rolling
Doing so may clear out-of-band data which is injected into the data-stream.
Diffstat (limited to 'libs/ardour/disk_reader.cc')
-rw-r--r--libs/ardour/disk_reader.cc16
1 files changed, 6 insertions, 10 deletions
diff --git a/libs/ardour/disk_reader.cc b/libs/ardour/disk_reader.cc
index 624a9ac17d..47cdc81ad2 100644
--- a/libs/ardour/disk_reader.cc
+++ b/libs/ardour/disk_reader.cc
@@ -254,16 +254,12 @@ DiskReader::run (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_samp
}
if (speed == 0.0) {
- /* stopped. Don't accidentally pass any data from disk
- * into our outputs (e.g. via interpolation)
- * nor jump ahead playback_sample when not rolling
- */
- if (ms == MonitoringDisk) {
- /* when monitoring disk, clear input data so far,
- * everything before the disk processor is not relevant.
- */
- bufs.silence (nframes, 0);
- }
+ /* Nothing to do here.
+ *
+ * Do not clear input buffers here when (ms == MonitoringDisk)
+ * we need to allow out-of-band data to pass thru from the input.
+ * (e.g. MIDI immediate events)
+ */
return;
}