diff options
author | Robin Gareus <robin@gareus.org> | 2017-06-14 15:14:56 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-06-14 15:21:16 +0200 |
commit | 22bddf543421f2a75a5a807009ea3e96dcb26cac (patch) | |
tree | eb1b3608a95557c6999138afc4aba68a722d2d1e /libs/ardour/gain_control.cc | |
parent | e0a1c7690acc0c79c070bb23c992ab6b62cbf2c6 (diff) |
Special-case VCA at 0 (-inf dB), force gain slaves to -inf dB
Diffstat (limited to 'libs/ardour/gain_control.cc')
-rw-r--r-- | libs/ardour/gain_control.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libs/ardour/gain_control.cc b/libs/ardour/gain_control.cc index ee356b017c..7b0f4e404c 100644 --- a/libs/ardour/gain_control.cc +++ b/libs/ardour/gain_control.cc @@ -102,6 +102,15 @@ GainControl::inc_gain (gain_t factor) } } +void +GainControl::post_add_master (boost::shared_ptr<AutomationControl> m) +{ + if (m->get_value() == 0) { + /* master is at -inf, which forces this ctrl to -inf on assignment */ + Changed (false, Controllable::NoGroup); /* EMIT SIGNAL */ + } +} + bool GainControl::get_masters_curve_locked (framepos_t start, framepos_t end, float* vec, framecnt_t veclen) const { |