summaryrefslogtreecommitdiff
path: root/libs/ardour/delivery.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-11-21 17:20:57 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-11-21 17:20:57 +0000
commit9fa51e19b65153db29ff5865b8e22eb58b99c82b (patch)
treecaef0898f94fe59bcded60bd397c349056f1c113 /libs/ardour/delivery.cc
parent78503905d774ced7354ef95bc638829d315f1311 (diff)
some provisional support for "real" solo-isolate behaviour, subject to more discussions with mr. oofus and others
git-svn-id: svn://localhost/ardour2/branches/3.0@6145 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/delivery.cc')
-rw-r--r--libs/ardour/delivery.cc13
1 files changed, 4 insertions, 9 deletions
diff --git a/libs/ardour/delivery.cc b/libs/ardour/delivery.cc
index 113c434388..72f24c065e 100644
--- a/libs/ardour/delivery.cc
+++ b/libs/ardour/delivery.cc
@@ -529,6 +529,7 @@ Delivery::target_gain ()
gain_t desired_gain;
+
if (_solo_level) {
desired_gain = 1.0;
} else {
@@ -549,18 +550,12 @@ Delivery::target_gain ()
mp = MuteMaster::PreFader;
break;
}
-
- if (_solo_isolated) {
-
- /* ... but we are isolated from all that nonsense */
-
- desired_gain = _mute_master->mute_gain_at (mp);
-
- } else if (_session.soloing()) {
-
+
+ if (!_solo_isolated && _session.soloing()) {
desired_gain = min (Config->get_solo_mute_gain(), _mute_master->mute_gain_at (mp));
} else {
+
desired_gain = _mute_master->mute_gain_at (mp);
}