commit b8c943fa15447a3a7e4787b1e886229353b38c4c
parent c5d058b119facaf5d7d673d1fd0e186d1deb1c98
Author: Matt Demanett <matt@demanett.net>
Date: Wed, 19 Sep 2018 22:02:01 -0400
Fix LMTR to use Amplifier like PRESSOR does.
Diffstat:
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/Lmtr.cpp b/src/Lmtr.cpp
@@ -39,12 +39,12 @@ void Lmtr::step() {
float env = abs(leftInput + rightInput);
float detectorDb = amplitudeToDecibels(env / 5.0f);
float compressionDb = _compressor.compressionDb(detectorDb, _thresholdDb, Compressor::maxEffectiveRatio, _softKnee);
- float compression = decibelsToAmplitude(-compressionDb);
+ _amplifier.setLevel(-compressionDb);
if (outputs[LEFT_OUTPUT].active) {
- outputs[LEFT_OUTPUT].value = _saturator.next(leftInput * compression * _outLevel);
+ outputs[LEFT_OUTPUT].value = _saturator.next(_amplifier.next(leftInput) * _outLevel);
}
if (outputs[RIGHT_OUTPUT].active) {
- outputs[RIGHT_OUTPUT].value = _saturator.next(rightInput * compression * _outLevel);
+ outputs[RIGHT_OUTPUT].value = _saturator.next(_amplifier.next(rightInput) * _outLevel);
}
}
diff --git a/src/Lmtr.hpp b/src/Lmtr.hpp
@@ -43,6 +43,7 @@ struct Lmtr : Module {
bool _softKnee = true;
Compressor _compressor;
+ Amplifier _amplifier;
Saturator _saturator;
Lmtr() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) {