diff options
author | Robin Gareus <robin@gareus.org> | 2017-09-30 23:16:04 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-09-30 23:16:04 +0200 |
commit | eb0dded0954782768834e1d3a494f45cc4a118a1 (patch) | |
tree | 7f67841c0c04354f4b20f2f9510493000679e18d /libs/ardour/ardour/route.h | |
parent | 97c637e39914a8b68f1d0c83d3f8c37d81fc43c2 (diff) |
Immediate-event/out-of-band injection update & tweak clearing buffers
Immediate events are used for MIDI-Panic and to inject GUI generated
events e.g. patch-changes, note-events from the track-header
(scroomer-keyboard) and patch-change audition.
Current behavior:
- snapshot copy immediate events from ringbuffer into a buffer at
the beginning of each the cycle.
- Inject immediate events into input-buffer directly after reading the input
- process "normally"
- pass immediate event-buffer to disk-writer, so it can skip them
(don't write immediate events to disk)
- if the Route is not monitoring input: clear buffer before disk-reader
and re-inject (original) immediate events after the disk-reader
- immediate events process normally and are also sent to outputs.
Diffstat (limited to 'libs/ardour/ardour/route.h')
-rw-r--r-- | libs/ardour/ardour/route.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libs/ardour/ardour/route.h b/libs/ardour/ardour/route.h index 1437fd79ed..830ef4bab3 100644 --- a/libs/ardour/ardour/route.h +++ b/libs/ardour/ardour/route.h @@ -597,7 +597,9 @@ protected: virtual int no_roll_unlocked (pframes_t nframes, samplepos_t start_sample, samplepos_t end_sample, bool session_state_changing); - virtual void write_out_of_band_data (BufferSet& /* bufs */, samplepos_t /* start_sample */, samplepos_t /* end_sample */, samplecnt_t /* nframes */) {} + virtual void snapshot_out_of_band_data (samplecnt_t /* nframes */) {} + virtual void write_out_of_band_data (BufferSet&, samplecnt_t /* nframes */) const {} + virtual void update_controls (BufferSet const&) {} void process_output_buffers (BufferSet& bufs, samplepos_t start_sample, samplepos_t end_sample, |