aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/LV2/src/VinylDither/VinylDither.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/LV2/src/VinylDither/VinylDither.cpp')
-rw-r--r--plugins/LV2/src/VinylDither/VinylDither.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/plugins/LV2/src/VinylDither/VinylDither.cpp b/plugins/LV2/src/VinylDither/VinylDither.cpp
new file mode 100644
index 0000000..5d92f97
--- /dev/null
+++ b/plugins/LV2/src/VinylDither/VinylDither.cpp
@@ -0,0 +1,66 @@
+#include "VinylDither.h"
+#include <iostream>
+#include <lv2wrapper.h>
+
+VinylDither::VinylDither(double rate)
+ : LV2Plugin(rate)
+{
+}
+
+void VinylDither::activate()
+{
+ NSOddL = 0.0;
+ prevL = 0.0;
+ nsL[0] = 0;
+ nsL[1] = 0;
+ nsL[2] = 0;
+ nsL[3] = 0;
+ nsL[4] = 0;
+ nsL[5] = 0;
+ nsL[6] = 0;
+ nsL[7] = 0;
+ nsL[8] = 0;
+ nsL[9] = 0;
+ nsL[10] = 0;
+ nsL[11] = 0;
+ nsL[12] = 0;
+ nsL[13] = 0;
+ nsL[14] = 0;
+ nsL[15] = 0;
+ NSOddR = 0.0;
+ prevR = 0.0;
+ nsR[0] = 0;
+ nsR[1] = 0;
+ nsR[2] = 0;
+ nsR[3] = 0;
+ nsR[4] = 0;
+ nsR[5] = 0;
+ nsR[6] = 0;
+ nsR[7] = 0;
+ nsR[8] = 0;
+ nsR[9] = 0;
+ nsR[10] = 0;
+ nsR[11] = 0;
+ nsR[12] = 0;
+ nsR[13] = 0;
+ nsR[14] = 0;
+ nsR[15] = 0;
+ //this is reset: values being initialized only once. Startup values, whatever they are.
+
+}
+
+void VinylDither::run(uint32_t num_samples)
+{
+
+
+ processReplacing(const_cast<float **>(in), out, num_samples);
+}
+
+//
+// Include the processing code from the VST version.
+//
+#include <cmath>
+#include "../../../LinuxVST/src/VinylDither/VinylDitherProc.cpp"
+
+// Create the LV2Wrapper and register the plugin
+LV2Wrapper<VinylDither> plugin;