summaryrefslogtreecommitdiff
path: root/libs/ardour/io.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/io.cc')
-rw-r--r--libs/ardour/io.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/libs/ardour/io.cc b/libs/ardour/io.cc
index b6c3648cda..bcd3ee7940 100644
--- a/libs/ardour/io.cc
+++ b/libs/ardour/io.cc
@@ -125,7 +125,8 @@ IO::IO (Session& s, string name,
deferred_state = 0;
apply_gain_automation = false;
-
+ _ignore_gain_on_deliver = false;
+
_gain_automation_state = Off;
_gain_automation_style = Absolute;
@@ -431,7 +432,7 @@ IO::deliver_output_no_pan (vector<Sample *>& bufs, uint32_t nbufs, nframes_t nfr
gain_t dg;
gain_t old_gain = _gain;
- if (apply_gain_automation) {
+ if (apply_gain_automation || _ignore_gain_on_deliver) {
/* gain has already been applied by automation code. do nothing here except
speed quietning.
@@ -498,7 +499,7 @@ IO::deliver_output_no_pan (vector<Sample *>& bufs, uint32_t nbufs, nframes_t nfr
_gain = dg;
}
- if (apply_gain_automation) {
+ if (apply_gain_automation || _ignore_gain_on_deliver) {
_gain = old_gain;
}
}