From 8caed20c973636343a8a337dc78b34a399b74d78 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Wed, 17 Mar 2010 16:01:58 +0000 Subject: fixes for various consistency/settings issues in monitor section; minor edit to PACKAGER_README git-svn-id: svn://localhost/ardour2/branches/3.0@6771 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/monitor_processor.cc | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) (limited to 'libs/ardour/monitor_processor.cc') diff --git a/libs/ardour/monitor_processor.cc b/libs/ardour/monitor_processor.cc index f7dbd7bfdb..aa1609a844 100644 --- a/libs/ardour/monitor_processor.cc +++ b/libs/ardour/monitor_processor.cc @@ -4,6 +4,7 @@ #include "ardour/amp.h" #include "ardour/dB.h" +#include "ardour/debug.h" #include "ardour/audio_buffer.h" #include "ardour/monitor_processor.h" #include "ardour/session.h" @@ -243,6 +244,20 @@ MonitorProcessor::run (BufferSet& bufs, sframes_t /*start_frame*/, sframes_t /*e } } + DEBUG_TRACE (DEBUG::Monitor, + string_compose("channel %1 sb %2 gc %3 gd %4 cd %5 dl %6 cp %7 cc %8 cs %9 sc %10 TG %11\n", + chn, + solo_boost, + global_cut, + global_dim, + _channels[chn].dim, + dim_level, + _channels[chn].polarity, + _channels[chn].cut, + _channels[chn].soloed, + solo_cnt, + target_gain)); + if (target_gain != _channels[chn].current_gain || target_gain != 1.0f) { Amp::apply_gain (*b, nframes, _channels[chn].current_gain, target_gain); @@ -331,13 +346,15 @@ MonitorProcessor::set_cut (uint32_t chn, bool yn) void MonitorProcessor::set_solo (uint32_t chn, bool solo) { - _channels[chn].soloed = solo; - - if (solo) { - solo_cnt++; - } else { - if (solo_cnt > 0) { - solo_cnt--; + if (solo != _channels[chn].soloed) { + _channels[chn].soloed = solo; + + if (solo) { + solo_cnt++; + } else { + if (solo_cnt > 0) { + solo_cnt--; + } } } } -- cgit v1.2.3