diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2017-04-11 17:38:34 +0100 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2017-09-18 11:40:53 -0400 |
commit | 53e6f13852f1cc831002cce9dc84d07e7e526515 (patch) | |
tree | f199dcfb041f77e69fa5fefe8d91c662aad768de /libs/ardour/disk_writer.cc | |
parent | 462711b23ab270c77d3ccb5aa23f5f9088b456b1 (diff) |
addd more DEBUG_TRACE for DiskIO; set DiskIOProcess::_need_butler more appropriately; other minor adjustments
Diffstat (limited to 'libs/ardour/disk_writer.cc')
-rw-r--r-- | libs/ardour/disk_writer.cc | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/libs/ardour/disk_writer.cc b/libs/ardour/disk_writer.cc index be6763e088..f02217e046 100644 --- a/libs/ardour/disk_writer.cc +++ b/libs/ardour/disk_writer.cc @@ -477,9 +477,6 @@ DiskWriter::prepare_record_status(framepos_t capture_start_frame) void DiskWriter::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, double speed, pframes_t nframes, bool result_required) - -/* (BufferSet& bufs, framepos_t transport_frame, pframes_t nframes, framecnt_t& playback_distance, bool need_disk_signal) - */ { uint32_t n; boost::shared_ptr<ChannelList> c = channels.reader(); @@ -490,6 +487,8 @@ DiskWriter::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, bool re = record_enabled (); bool can_record = _session.actively_recording (); + _need_butler = false; + check_record_status (start_frame, can_record); if (nframes == 0) { @@ -687,7 +686,7 @@ DiskWriter::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, /* AUDIO BUTLER REQUIRED CODE */ - if (!c->empty()) { + if (_playlists[DataType::AUDIO] && !c->empty()) { if (((framecnt_t) c->front()->buf->read_space() >= _chunk_frames)) { _need_butler = true; } @@ -695,9 +694,11 @@ DiskWriter::run (BufferSet& bufs, framepos_t start_frame, framepos_t end_frame, /* MIDI BUTLER REQUIRED CODE */ - if (_midi_buf->read_space() < _midi_buf->bufsize() / 2) { + if (_playlists[DataType::MIDI] && (_midi_buf->read_space() < _midi_buf->bufsize() / 2)) { _need_butler = true; } + + DEBUG_TRACE (DEBUG::Butler, string_compose ("%1 writer run, needs butler = %2\n", name(), _need_butler)); } void |