allow internal generators to make noise, even if we are not rolling, and using auto-input
This commit is contained in:
parent
8dc4187f1a
commit
7e764ea405
@ -450,8 +450,13 @@ Route::process_output_buffers (BufferSet& bufs,
|
||||
on a transition between monitoring states we get a de-clicking gain
|
||||
change in the _main_outs delivery.
|
||||
*/
|
||||
bool silence = monitoring_state () == MonitoringSilence;
|
||||
|
||||
_main_outs->no_outs_cuz_we_no_monitor (monitoring_state () == MonitoringSilence);
|
||||
//but we override this in the case where we have an internal generator
|
||||
if ( _have_internal_generator )
|
||||
silence = false;
|
||||
|
||||
_main_outs->no_outs_cuz_we_no_monitor (silence);
|
||||
|
||||
/* -------------------------------------------------------------------------------------------
|
||||
GLOBAL DECLICK (for transport changes etc.)
|
||||
|
@ -419,25 +419,13 @@ Track::no_roll (pframes_t nframes, framepos_t start_frame, framepos_t end_frame,
|
||||
|
||||
bool be_silent;
|
||||
|
||||
if (_have_internal_generator) {
|
||||
/* since the instrument has no input streams,
|
||||
there is no reason to send any signal
|
||||
into the route.
|
||||
*/
|
||||
be_silent = true;
|
||||
|
||||
} else {
|
||||
|
||||
MonitorState const s = monitoring_state ();
|
||||
/* we are not rolling, so be silent even if we are monitoring disk, as there
|
||||
will be no disk data coming in.
|
||||
*/
|
||||
switch (s) {
|
||||
case MonitoringSilence:
|
||||
/* if there is an instrument, be_silent should always
|
||||
be false
|
||||
*/
|
||||
be_silent = (the_instrument_unlocked() == 0);
|
||||
be_silent = true;
|
||||
break;
|
||||
case MonitoringDisk:
|
||||
be_silent = true;
|
||||
@ -449,6 +437,10 @@ Track::no_roll (pframes_t nframes, framepos_t start_frame, framepos_t end_frame,
|
||||
be_silent = false;
|
||||
break;
|
||||
}
|
||||
|
||||
//if we have an internal generator, let it play regardless of monitoring state
|
||||
if (_have_internal_generator) {
|
||||
be_silent = false;
|
||||
}
|
||||
|
||||
_amp->apply_gain_automation (false);
|
||||
|
Loading…
Reference in New Issue
Block a user