diff options
Diffstat (limited to 'plugins/LV2/src/DeEss/DeEss.cpp')
-rw-r--r-- | plugins/LV2/src/DeEss/DeEss.cpp | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/plugins/LV2/src/DeEss/DeEss.cpp b/plugins/LV2/src/DeEss/DeEss.cpp new file mode 100644 index 0000000..c6e8e60 --- /dev/null +++ b/plugins/LV2/src/DeEss/DeEss.cpp @@ -0,0 +1,54 @@ +#include "DeEss.h" +#include <iostream> +#include <lv2wrapper.h> + +DeEss::DeEss(double rate) + : LV2Plugin(rate) +{ +} + +void DeEss::activate() +{ + A = 0.0; + B = 0.5; //-48.0 to 0.0 + C = 0.5; + + s1L = s2L = s3L = s4L = s5L = s6L= s7L = 0.0; + m1L = m2L = m3L = m4L = m5L = m6L = 0.0; + c1L = c2L = c3L = c4L = c5L = 0.0; + ratioAL = ratioBL = 1.0; + iirSampleAL = 0.0; + iirSampleBL = 0.0; + + s1R = s2R = s3R = s4R = s5R = s6R = s7R = 0.0; + m1R = m2R = m3R = m4R = m5R = m6R = 0.0; + c1R = c2R = c3R = c4R = c5R = 0.0; + ratioAR = ratioBR = 1.0; + iirSampleAR = 0.0; + iirSampleBR = 0.0; + + flip = false; + + fpNShapeL = 0.0; + fpNShapeR = 0.0; + //this is reset: values being initialized only once. Startup values, whatever they are. + +} + +void DeEss::run(uint32_t num_samples) +{ + A = *params[0]; + B = *params[1]; + C = *params[2]; + + processReplacing(const_cast<float **>(in), out, num_samples); +} + +// +// Include the processing code from the VST version. +// +#include <cmath> +#include "../../../LinuxVST/src/DeEss/DeEssProc.cpp" + +// Create the LV2Wrapper and register the plugin +LV2Wrapper<DeEss> plugin; |