diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index 7d66187e3a..9e4e788c67 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -5055,7 +5055,14 @@ Route::pan_elevation_control() const if (Profile->get_mixbus() || !_pannable || !panner()) { return boost::shared_ptr(); } - return _pannable->pan_elevation_control; + + set c = panner()->what_can_be_automated (); + + if (c.find (PanElevationAutomation) != c.end()) { + return _pannable->pan_elevation_control; + } else { + return boost::shared_ptr(); + } } boost::shared_ptr Route::pan_width_control() const @@ -5063,7 +5070,14 @@ Route::pan_width_control() const if (Profile->get_mixbus() || !_pannable || !panner()) { return boost::shared_ptr(); } - return _pannable->pan_width_control; + + set c = panner()->what_can_be_automated (); + + if (c.find (PanWidthAutomation) != c.end()) { + return _pannable->pan_width_control; + } else { + return boost::shared_ptr(); + } } boost::shared_ptr Route::pan_frontback_control() const @@ -5071,7 +5085,14 @@ Route::pan_frontback_control() const if (Profile->get_mixbus() || !_pannable || !panner()) { return boost::shared_ptr(); } - return _pannable->pan_frontback_control; + + set c = panner()->what_can_be_automated (); + + if (c.find (PanFrontBackAutomation) != c.end()) { + return _pannable->pan_frontback_control; + } else { + return boost::shared_ptr(); + } } boost::shared_ptr Route::pan_lfe_control() const @@ -5079,7 +5100,14 @@ Route::pan_lfe_control() const if (Profile->get_mixbus() || !_pannable || !panner()) { return boost::shared_ptr(); } - return _pannable->pan_lfe_control; + + set c = panner()->what_can_be_automated (); + + if (c.find (PanLFEAutomation) != c.end()) { + return _pannable->pan_lfe_control; + } else { + return boost::shared_ptr(); + } } uint32_t