Prepare API for per disk-reader de-click

This commit is contained in:
Robin Gareus
2018-05-30 18:29:51 +02:00
parent bee09ac9e1
commit dca30c99fc
4 changed files with 15 additions and 1 deletions

View File

@@ -93,6 +93,10 @@ public:
void playlist_modified ();
void reset_tracker ();
bool declick_in_progress () const {
return _declick_gain != 0; // declick-out
}
static void set_midi_readahead_samples (samplecnt_t samples_ahead) { midi_readahead = samples_ahead; }
static void set_no_disk_output (bool yn);
@@ -132,6 +136,8 @@ private:
IOChange input_change_pending;
samplepos_t file_sample[DataType::num_types];
gain_t _declick_gain;
int _do_refill_with_alloc (bool partial_fill);
static samplecnt_t _chunk_samples;

View File

@@ -64,7 +64,8 @@ public:
bool set_processor_state (XMLNode const & node, XMLProperty const* prop, ProcessorList& new_order, bool& must_configure);
bool needs_butler() const { return _needs_butler; }
bool needs_butler () const { return _needs_butler; }
bool declick_in_progress () const;
bool can_record();

View File

@@ -56,6 +56,7 @@ DiskReader::DiskReader (Session& s, string const & str, DiskIOProcessor::Flag f)
, overwrite_offset (0)
, _pending_overwrite (false)
, overwrite_queued (false)
, _declick_gain (0)
{
file_sample[DataType::AUDIO] = 0;
file_sample[DataType::MIDI] = 0;

View File

@@ -250,6 +250,12 @@ Track::freeze_state() const
return _freeze_record.state;
}
bool
Track::declick_in_progress () const
{
return _disk_reader->declick_in_progress ();
}
bool
Track::can_record()
{