diff options
Diffstat (limited to 'libs/ardour/auditioner.cc')
-rw-r--r-- | libs/ardour/auditioner.cc | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libs/ardour/auditioner.cc b/libs/ardour/auditioner.cc index 71129ccd11..ba51922a8f 100644 --- a/libs/ardour/auditioner.cc +++ b/libs/ardour/auditioner.cc @@ -397,6 +397,18 @@ Auditioner::audition_region (boost::shared_ptr<Region> region) } _disk_reader->seek (offset, true); + + if (_midi_audition) { + /* Fill MIDI buffers. + * This is safe to call from here. ::::audition_region() + * is called by the butler thread. Also the session is not + * yet auditioning. So Session::non_realtime_overwrite() + * does call the auditioner's DR. + */ + set_pending_overwrite (PlaylistModified); + _disk_reader->overwrite_existing_buffers (); + } + current_sample = offset; g_atomic_int_set (&_auditioning, 1); |