commit 8af16d3da210dd84ba6741c63045a98613ed9ad0
parent 191b6e7d26c9442fe163569ea9f4c428ed6212f2
Author: fundamental <mark.d.mccurry@gmail.com>
Date: Tue, 15 Nov 2016 19:45:51 -0500
Distortion: Add Waveform View
Diffstat:
1 file changed, 19 insertions(+), 0 deletions(-)
diff --git a/src/Effects/Distorsion.cpp b/src/Effects/Distorsion.cpp
@@ -50,6 +50,25 @@ rtosc::Ports Distorsion::ports = {
rEffParTF(Pstereo, 9, rShort("stereo"), "Stereo"),
rEffParTF(Pprefiltering, 10, rShort("p.filt"),
"Filtering before/after non-linearity"),
+ {"waveform:", 0, 0, [](const char *, rtosc::RtData &d)
+ {
+ Distorsion &dd = *(Distorsion*)d.obj;
+ float buffer[128];
+ rtosc_arg_t args[128];
+ char arg_str[128+1] = {0};
+
+ for(int i=0; i<128; ++i)
+ buffer[i] = 2*(i/128.0)-1;
+
+ waveShapeSmps(sizeof(buffer), buffer, dd.Ptype + 1, dd.Pdrive);
+
+ for(int i=0; i<128; ++i) {
+ arg_str[i] = 'f';
+ args[i].f = buffer[i];
+ }
+
+ d.replyArray(d.loc, arg_str, args);
+ }},
};
#undef rBegin
#undef rEnd