aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--effects/distortion~-help.pd27
-rw-r--r--effects/distortion~.pd203
2 files changed, 230 insertions, 0 deletions
diff --git a/effects/distortion~-help.pd b/effects/distortion~-help.pd
new file mode 100644
index 0000000..281916b
--- /dev/null
+++ b/effects/distortion~-help.pd
@@ -0,0 +1,27 @@
+#N canvas 635 105 450 300 10;
+#X obj 38 206 oscillo~;
+#X obj 39 24 osc~ 222;
+#X obj 60 172 dac~;
+#X obj 60 148 *~ 0.1;
+#X floatatom 151 28 5 0 1 0 - - -;
+#X obj 151 64 line~;
+#X msg 151 44 \$1 100;
+#X obj 38 79 +~;
+#X floatatom 53 61 5 0 0 0 - - -;
+#X obj 151 96 hradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144 -1
+-1 0;
+#X text 224 97 disto mode;
+#X text 199 28 distortion %;
+#X text 91 61 asym;
+#X obj 38 121 distortion~;
+#X connect 1 0 7 0;
+#X connect 3 0 2 1;
+#X connect 3 0 2 0;
+#X connect 4 0 6 0;
+#X connect 5 0 13 1;
+#X connect 6 0 5 0;
+#X connect 7 0 13 0;
+#X connect 8 0 7 1;
+#X connect 9 0 13 2;
+#X connect 13 0 3 0;
+#X connect 13 0 0 0;
diff --git a/effects/distortion~.pd b/effects/distortion~.pd
new file mode 100644
index 0000000..e5a7064
--- /dev/null
+++ b/effects/distortion~.pd
@@ -0,0 +1,203 @@
+#N canvas 188 64 622 419 10;
+#X obj 30 129 +~ 5000;
+#X obj 29 27 inlet~;
+#X obj 31 153 tabread4~ \$0-disto;
+#X obj 160 29 inlet~;
+#X obj 29 102 *~;
+#X obj 160 49 *~ 5000;
+#X obj 160 129 +~ 5000;
+#X obj 160 153 tabread4~ \$0-disto;
+#X obj 30 229 outlet~;
+#X obj 294 298 table \$0-disto 10000;
+#X obj 31 197 /~;
+#X obj 160 71 +~ 100;
+#N canvas 27 440 450 300 sqrt 0;
+#X obj 20 63 t b b;
+#X obj 20 159 f;
+#X obj 63 159 + 1;
+#X msg 47 136 0;
+#X obj 20 104 until;
+#X obj 20 44 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 20 219 - 0.5;
+#X obj 20 259 t f f f;
+#X obj 39 280 *;
+#X obj 39 300 + 1;
+#X obj 39 320 sqrt;
+#X obj 20 340 /;
+#X obj 20 239 * 20;
+#X obj 20 199 / 9999;
+#X msg 20 83 10000;
+#X obj 20 179 t f f;
+#X obj 20 360 tabwrite \$0-disto;
+#X obj 20 18 inlet;
+#X connect 0 0 14 0;
+#X connect 0 1 3 0;
+#X connect 1 0 2 0;
+#X connect 1 0 15 0;
+#X connect 2 0 1 1;
+#X connect 3 0 1 1;
+#X connect 4 0 1 0;
+#X connect 5 0 0 0;
+#X connect 6 0 12 0;
+#X connect 7 0 11 0;
+#X connect 7 1 8 0;
+#X connect 7 2 8 1;
+#X connect 8 0 9 0;
+#X connect 9 0 10 0;
+#X connect 10 0 11 1;
+#X connect 11 0 16 0;
+#X connect 12 0 7 0;
+#X connect 13 0 6 0;
+#X connect 14 0 4 0;
+#X connect 15 0 13 0;
+#X connect 15 1 16 1;
+#X connect 17 0 5 0;
+#X restore 313 169 pd sqrt;
+#X obj 313 151 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#N canvas 0 0 640 460 sigmoid 0;
+#X obj 23 59 t b b;
+#X obj 23 148 f;
+#X obj 61 148 + 1;
+#X msg 50 125 0;
+#X obj 23 102 until;
+#X obj 23 40 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 23 213 - 0.5;
+#X obj 23 276 - 0.5;
+#X obj 23 298 * 2;
+#X obj 23 319 tabwrite \$0-disto;
+#X msg 23 81 10000;
+#X obj 23 192 / 9999;
+#X obj 23 234 * 30;
+#X obj 23 171 t f f;
+#X obj 23 255 expr ( exp($f1)) / ( 1 + exp($f1));
+#X obj 23 15 inlet;
+#X connect 0 0 10 0;
+#X connect 0 1 3 0;
+#X connect 1 0 2 0;
+#X connect 1 0 13 0;
+#X connect 2 0 1 1;
+#X connect 3 0 1 1;
+#X connect 4 0 1 0;
+#X connect 5 0 0 0;
+#X connect 6 0 12 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 10 0 4 0;
+#X connect 11 0 6 0;
+#X connect 12 0 14 0;
+#X connect 13 0 11 0;
+#X connect 13 1 9 1;
+#X connect 14 0 7 0;
+#X connect 15 0 5 0;
+#X restore 298 131 pd sigmoid;
+#X obj 298 112 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#N canvas 0 0 739 509 x_over_xplus 0;
+#X obj 17 58 t b b;
+#X obj 17 141 f;
+#X obj 55 141 + 1;
+#X msg 44 118 0;
+#X obj 17 96 until;
+#X obj 17 39 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 17 315 /;
+#X obj 44 269 abs;
+#X obj 44 248 * 2;
+#X obj 17 208 - 0.5;
+#X obj 44 290 + 0.1;
+#X msg 17 77 10000;
+#X obj 17 189 / 9999;
+#X obj 17 359 tabwrite \$0-disto;
+#X obj 17 337 * 2;
+#X obj 17 228 t f f;
+#X obj 17 167 t f f;
+#X obj 17 16 inlet;
+#X connect 0 0 11 0;
+#X connect 0 1 3 0;
+#X connect 1 0 2 0;
+#X connect 1 0 16 0;
+#X connect 2 0 1 1;
+#X connect 3 0 1 1;
+#X connect 4 0 1 0;
+#X connect 5 0 0 0;
+#X connect 6 0 14 0;
+#X connect 7 0 10 0;
+#X connect 8 0 7 0;
+#X connect 9 0 15 0;
+#X connect 10 0 6 1;
+#X connect 11 0 4 0;
+#X connect 12 0 9 0;
+#X connect 14 0 13 0;
+#X connect 15 0 6 0;
+#X connect 15 1 8 0;
+#X connect 16 0 12 0;
+#X connect 16 1 13 1;
+#X connect 17 0 5 0;
+#X restore 328 214 pd x_over_xplus;
+#X obj 328 194 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#N canvas 0 0 588 371 poly 0;
+#X obj 16 14 inlet;
+#X obj 16 55 t b b;
+#X obj 16 140 f;
+#X obj 54 140 + 1;
+#X msg 43 117 0;
+#X obj 16 98 until;
+#X obj 16 36 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 16 209 - 0.5;
+#X obj 16 253 expr exp(-$f1*$f1)*($f1+pow($f1 \, 3)*2/3 + pow($f1 \,
+5)*4/15);
+#X obj 16 275 tabwrite \$0-disto;
+#X obj 16 188 / 9999;
+#X msg 16 76 10000;
+#X obj 16 165 t f f;
+#X obj 16 231 * 2;
+#X connect 0 0 6 0;
+#X connect 1 0 11 0;
+#X connect 1 1 4 0;
+#X connect 2 0 3 0;
+#X connect 2 0 12 0;
+#X connect 3 0 2 1;
+#X connect 4 0 2 1;
+#X connect 5 0 2 0;
+#X connect 6 0 1 0;
+#X connect 7 0 13 0;
+#X connect 8 0 9 0;
+#X connect 10 0 7 0;
+#X connect 11 0 5 0;
+#X connect 12 0 10 0;
+#X connect 12 1 9 1;
+#X connect 13 0 8 0;
+#X restore 345 258 pd poly;
+#X obj 345 238 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
+-1 -1;
+#X obj 298 32 inlet;
+#X obj 298 84 sel 0 1 2 3;
+#X msg 337 54 0;
+#X obj 337 32 loadbang;
+#X connect 0 0 2 0;
+#X connect 1 0 4 0;
+#X connect 2 0 10 0;
+#X connect 3 0 5 0;
+#X connect 4 0 0 0;
+#X connect 5 0 11 0;
+#X connect 6 0 7 0;
+#X connect 7 0 10 1;
+#X connect 10 0 8 0;
+#X connect 11 0 4 1;
+#X connect 11 0 6 0;
+#X connect 13 0 12 0;
+#X connect 15 0 14 0;
+#X connect 17 0 16 0;
+#X connect 19 0 18 0;
+#X connect 20 0 21 0;
+#X connect 21 0 15 0;
+#X connect 21 1 13 0;
+#X connect 21 2 17 0;
+#X connect 21 3 19 0;
+#X connect 22 0 21 0;
+#X connect 23 0 22 0;