13
0

FP8: ignore inactive muted tracks w/mute-clear

This commit is contained in:
Robin Gareus 2017-05-05 15:36:08 +02:00
parent 3a75e7c53b
commit 8288fa40b9
2 changed files with 11 additions and 2 deletions

View File

@ -294,6 +294,10 @@ FaderPort8::button_mute_clear ()
if ((*i)->is_auditioner() || (*i)->is_monitor()) {
continue;
}
boost::shared_ptr<Route> r = boost::dynamic_pointer_cast<Route>(*i);
if (r && !r->active()) {
continue;
}
boost::shared_ptr<AutomationControl> ac = (*i)->mute_control();
if (ac && ac->get_value () > 0) {
cl->push_back (ac);

View File

@ -197,11 +197,16 @@ void
FaderPort8::notify_mute_changed ()
{
bool muted = false;
boost::shared_ptr<RouteList> rl = session->get_routes();
for (RouteList::iterator i = rl->begin(); i != rl->end(); ++i) {
StripableList all;
session->get_stripables (all);
for (StripableList::const_iterator i = all.begin(); i != all.end(); ++i) {
if ((*i)->is_auditioner() || (*i)->is_monitor()) {
continue;
}
boost::shared_ptr<Route> r = boost::dynamic_pointer_cast<Route>(*i);
if (r && !r->active()) {
continue;
}
boost::shared_ptr<MuteControl> mc = (*i)->mute_control();
if (mc && mc->muted ()) {
muted = true;