Luca Conte 10 months ago
commit
050e8be99f
23 changed files with 4503 additions and 0 deletions
  1. 202 0
      abs/compressor~.pd
  2. 445 0
      abs/fi.bandpass~.pd
  3. 457 0
      abs/fi.highpass~.pd
  4. 475 0
      abs/fi.lowpass~.pd
  5. 66 0
      abs/fx.chorus~.pd
  6. 70 0
      abs/fx.downsample2~.pd
  7. 72 0
      abs/fx.downsample~.pd
  8. 197 0
      abs/granular.pd
  9. 35 0
      abs/gui.sliderh.pd
  10. 45 0
      abs/gui.sliderv.pd
  11. 24 0
      abs/ma.tanh~.pd
  12. 55 0
      abs/no.pinknoise~.pd
  13. 79 0
      abs/os.saw~-help.pd
  14. 130 0
      abs/os.saw~.pd
  15. 253 0
      abs/os.square~.pd
  16. 37 0
      abs/pmVoice~.pd
  17. 318 0
      abs/pp.pitchshift~.pd
  18. 552 0
      abs/re.plate~.pd
  19. 445 0
      abs/resonant~.pd
  20. 19 0
      first.pd
  21. 187 0
      kick.pd
  22. 220 0
      seq_voices.pd
  23. 120 0
      step_sequencer.pd

+ 202 - 0
abs/compressor~.pd

@@ -0,0 +1,202 @@
+#N canvas 585 225 590 290 10;
+#N canvas 0 23 557 246 hv.envfollow 0;
+#X obj 27 145 -~;
+#X obj 27 124 sig~ 1;
+#X obj 12 187 rpole~;
+#X obj 283 12 loadbang;
+#X obj 283 33 samplerate~;
+#X obj 78 68 *;
+#X obj 12 166 *~;
+#X obj 12 213 outlet~;
+#X obj 192 68 *;
+#X text 251 103 temp = abs(in);
+#X text 251 163 else;
+#X obj 165 110 r~ \$0-env;
+#X obj 68 201 s~ \$0-env;
+#X text 261 143 env = temp + attack_coeff * (env - temp);
+#X text 261 183 env = temp + release_coeff * (env - temp);
+#X obj 283 54 / 1000;
+#X text 251 80 http://www.musicdsp.org/archive.php?classid=2#97;
+#X obj 12 42 inlet~;
+#X obj 12 89 abs~;
+#N canvas 0 23 427 275 coeff 0;
+#X obj 53 55 inlet;
+#X obj 53 150 exp;
+#X msg 53 172 \$1 10;
+#X obj 53 194 line~;
+#X obj 53 125 /;
+#X msg 53 103 -4.60517 \$1;
+#X obj 53 82 max 1;
+#X obj 53 216 outlet~;
+#X text 109 217 coeff = exp(-1 / (Fs * time_ms));
+#X connect 0 0 6 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 7 0;
+#X connect 4 0 1 0;
+#X connect 5 0 4 0;
+#X connect 6 0 5 0;
+#X restore 192 89 pd coeff;
+#N canvas 0 23 427 275 coeff 0;
+#X obj 53 55 inlet;
+#X obj 53 150 exp;
+#X msg 53 172 \$1 10;
+#X obj 53 194 line~;
+#X obj 53 125 /;
+#X msg 53 103 -4.60517 \$1;
+#X obj 53 82 max 1;
+#X obj 53 216 outlet~;
+#X text 109 217 coeff = exp(-1 / (Fs * time_ms));
+#X connect 0 0 6 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 7 0;
+#X connect 4 0 1 0;
+#X connect 5 0 4 0;
+#X connect 6 0 5 0;
+#X restore 78 89 pd coeff;
+#X text 251 122 if (tmp > env);
+#N canvas 522 86 480 241 hv.multiplex 0;
+#X obj 38 197 outlet~;
+#N canvas 467 216 159 96 @hv_obj 0;
+#X obj 60 18 inlet~;
+#X obj 15 18 inlet~;
+#X obj 15 65 outlet~;
+#X obj 15 42 *~;
+#X connect 0 0 3 1;
+#X connect 1 0 3 0;
+#X connect 3 0 2 0;
+#X restore 38 112 pd @hv_obj __and~f;
+#N canvas 467 216 188 166 @hv_obj 0;
+#X obj 79 11 inlet~;
+#X obj 31 11 inlet~;
+#X obj 16 112 outlet~;
+#X obj 16 37 sig~ 1;
+#X obj 16 61 -~;
+#X obj 16 89 *~;
+#X connect 0 0 5 1;
+#X connect 1 0 4 1;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 2 0;
+#X restore 162 114 pd @hv_obj __andnot~f;
+#N canvas 538 372 182 89 @hv_obj 0;
+#X obj 66 18 inlet~;
+#X obj 15 18 inlet~;
+#X obj 15 65 outlet~;
+#X obj 15 42 +~, f 9;
+#X connect 0 0 3 1;
+#X connect 1 0 3 0;
+#X connect 3 0 2 0;
+#X restore 38 157 pd @hv_obj __or~f;
+#X obj 285 34 inlet~ lhs;
+#X obj 384 34 inlet~ rhs;
+#X obj 38 34 inlet~ input-a;
+#X obj 162 34 inlet~ input-b;
+#N canvas 0 23 144 197 @hv_obj 0;
+#X obj 23 69 -~;
+#X obj 23 94 clip~ -1e-37 0;
+#X obj 23 18 inlet~;
+#X obj 67 19 inlet~;
+#X obj 23 159 outlet~;
+#X obj 23 136 *~ 1e+37;
+#X obj 23 44 min~;
+#X obj 23 115 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 285 73 pd @hv_obj __gt~f;
+#X connect 1 0 3 0;
+#X connect 2 0 3 1;
+#X connect 3 0 0 0;
+#X connect 4 0 8 0;
+#X connect 5 0 8 1;
+#X connect 6 0 1 0;
+#X connect 7 0 2 1;
+#X connect 8 0 2 0;
+#X connect 8 0 1 1;
+#X restore 78 131 pd hv.multiplex;
+#X obj 78 42 inlet;
+#X obj 192 42 inlet;
+#X text 192 22 release (ms);
+#X text 78 22 attack (ms);
+#X connect 0 0 6 1;
+#X connect 1 0 0 0;
+#X connect 2 0 7 0;
+#X connect 2 0 12 0;
+#X connect 3 0 4 0;
+#X connect 4 0 15 0;
+#X connect 5 0 20 0;
+#X connect 6 0 2 0;
+#X connect 8 0 19 0;
+#X connect 11 0 22 3;
+#X connect 15 0 5 1;
+#X connect 15 0 8 1;
+#X connect 17 0 18 0;
+#X connect 18 0 6 0;
+#X connect 18 0 22 2;
+#X connect 19 0 22 1;
+#X connect 20 0 22 0;
+#X connect 22 0 0 1;
+#X connect 22 0 2 1;
+#X connect 23 0 5 0;
+#X connect 24 0 8 0;
+#X restore 27 112 pd hv.envfollow;
+#X obj 12 31 inlet~;
+#X obj 27 133 -~;
+#X obj 131 77 inlet;
+#X obj 131 98 + 100;
+#X obj 131 119 dbtorms;
+#X obj 27 154 *~;
+#X msg 187 119 1 \$1;
+#X obj 187 140 /;
+#X obj 187 98 inlet;
+#X obj 27 175 +~;
+#X obj 27 196 /~;
+#X obj 12 238 *~;
+#X obj 70 31 inlet;
+#X obj 114 31 inlet;
+#X obj 12 259 outlet~;
+#X text 12 11 inlet;
+#X text 70 11 attack;
+#X text 114 11 release;
+#X text 131 57 threshold;
+#X text 187 78 ratio;
+#X obj 197 13 loadbang;
+#X obj 197 34 f \$1;
+#X obj 247 34 f \$2;
+#X obj 287 34 f \$3;
+#X obj 347 34 f \$4;
+#X obj 27 217 ma.tanh~;
+#X connect 0 0 2 0;
+#X connect 0 0 11 1;
+#X connect 1 0 12 0;
+#X connect 1 0 0 0;
+#X connect 2 0 6 0;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 2 1;
+#X connect 5 0 10 1;
+#X connect 6 0 10 0;
+#X connect 7 0 8 0;
+#X connect 8 0 6 1;
+#X connect 9 0 7 0;
+#X connect 10 0 11 0;
+#X connect 11 0 26 0;
+#X connect 12 0 15 0;
+#X connect 13 0 0 1;
+#X connect 14 0 0 2;
+#X connect 21 0 22 0;
+#X connect 21 0 23 0;
+#X connect 21 0 25 0;
+#X connect 21 0 24 0;
+#X connect 22 0 0 1;
+#X connect 23 0 0 2;
+#X connect 24 0 4 0;
+#X connect 25 0 7 0;
+#X connect 26 0 12 1;

+ 445 - 0
abs/fi.bandpass~.pd

@@ -0,0 +1,445 @@
+#N canvas 1076 342 401 151 10;
+#N canvas 893 236 706 387 bandpass2.coeffs 0;
+#X obj 313 72 clip~ 0.1 100;
+#X obj 298 94 sig~ 1;
+#X obj 298 116 /~;
+#X obj 283 138 *~;
+#X obj 283 160 *~ 0.5;
+#X obj 12 259 sig~ 1;
+#X obj 12 281 /~;
+#X obj 122 297 *~;
+#X obj 242 297 *~;
+#X obj 302 297 *~;
+#X obj 317 231 *~ -2;
+#X obj 377 231 sig~ 1;
+#X obj 377 253 -~;
+#X obj 362 297 *~;
+#X obj 57 265 +~ 1;
+#X text 363 162 w0 = 2*pi*f0*Fs;
+#X text 363 182 alpha = sin(w0)/(2*Q);
+#X text 527 237 a2 = 1 - alpha;
+#X text 527 217 a1 = -2*cos(w0);
+#X text 392 72 H(z) = -----------------------------------------;
+#X text 392 32 Audio-Cookbook:;
+#X text 392 112 http://musicdsp.org/files/Audio-EQ-Cookbook.txt;
+#X text 434 87 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2);
+#X text 434 57 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2);
+#X text 527 197 a0 = 1 + alpha;
+#X text 517 177 LPF:;
+#X text 527 257 b0 = alpha;
+#X text 527 277 b1 = 0;
+#X text 527 297 b2 = -alpha;
+#X obj 257 253 *~ -1;
+#X obj 182 297 sig~ 0;
+#X obj 313 50 inlet~;
+#X obj 122 319 outlet~;
+#X obj 182 319 outlet~;
+#X obj 242 319 outlet~;
+#X obj 302 319 outlet~;
+#X obj 362 319 outlet~;
+#X obj 42 63 clip~ 20 20000;
+#X obj 42 41 inlet~;
+#X obj 42 106 *~ 6.28319;
+#X obj 42 84 /~ 44100;
+#X obj 140 47 loadbang;
+#X obj 140 68 samplerate~;
+#X obj 152 122 expr~ sin($v1);
+#X obj 42 215 expr~ cos($v1);
+#X text 122 339 (O1) b0;
+#X text 182 339 (O2) b1;
+#X text 242 339 (O3) b2;
+#X text 302 339 (O4) a1;
+#X text 362 339 (O5) a2;
+#X connect 0 0 2 1;
+#X connect 1 0 2 0;
+#X connect 2 0 3 1;
+#X connect 3 0 4 0;
+#X connect 4 0 12 1;
+#X connect 4 0 14 0;
+#X connect 4 0 29 0;
+#X connect 4 0 7 1;
+#X connect 5 0 6 0;
+#X connect 6 0 7 0;
+#X connect 6 0 8 0;
+#X connect 6 0 9 0;
+#X connect 6 0 13 0;
+#X connect 7 0 32 0;
+#X connect 8 0 34 0;
+#X connect 9 0 35 0;
+#X connect 10 0 9 1;
+#X connect 11 0 12 0;
+#X connect 12 0 13 1;
+#X connect 13 0 36 0;
+#X connect 14 0 6 1;
+#X connect 29 0 8 1;
+#X connect 30 0 33 0;
+#X connect 31 0 0 0;
+#X connect 37 0 40 0;
+#X connect 38 0 37 0;
+#X connect 39 0 43 0;
+#X connect 39 0 44 0;
+#X connect 40 0 39 0;
+#X connect 41 0 42 0;
+#X connect 42 0 40 1;
+#X connect 43 0 3 0;
+#X connect 44 0 10 0;
+#X restore 82 52 pd bandpass2.coeffs;
+#X obj 12 109 outlet~;
+#N canvas 776 547 365 190 @hv_obj 0;
+#X obj 12 31 inlet~;
+#N canvas 1097 522 303 331 zeros 0;
+#X obj 12 217 czero~;
+#X obj 12 273 czero~;
+#X obj 12 299 outlet~;
+#X obj 75 299 outlet~;
+#X obj 12 31 inlet~;
+#X obj 47 122 *~ -1;
+#X obj 47 143 *~ 0.5;
+#X obj 132 58 *~;
+#X obj 132 92 -~;
+#X obj 187 78 *~ 4;
+#X obj 187 57 *~;
+#X obj 132 113 abs~;
+#X obj 132 155 *~ 0.5;
+#X obj 132 176 /~;
+#N canvas 773 235 262 212 location 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 207 12 inlet~;
+#X obj 12 174 outlet~;
+#X obj 72 174 outlet~;
+#X obj 132 174 outlet~;
+#X obj 192 174 outlet~;
+#N canvas 725 189 180 137 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 758 270 144 76 @hv_obj 0;
+#X obj 62 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 945 362 136 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 62 49 pd gte;
+#N canvas 845 375 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 140 82 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 39 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 137 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 49 pd lte;
+#X obj 12 152 +~;
+#X obj 160 22 sig~ 0;
+#X obj 147 125 *~;
+#X obj 192 125 *~;
+#X obj 132 152 -~;
+#X obj 192 152 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 190 pd location;
+#X obj 132 134 sqrt~;
+#X obj 47 164 /~;
+#X obj 252 203 inlet;
+#X text 62 11 b0;
+#X text 132 11 b1;
+#X text 202 11 b2;
+#X obj 202 31 inlet~;
+#X obj 132 31 inlet~;
+#X obj 62 31 inlet~;
+#X text 252 183 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 4 0 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 16 0;
+#X connect 7 0 8 0;
+#X connect 8 0 11 0;
+#X connect 8 0 14 1;
+#X connect 9 0 8 1;
+#X connect 10 0 9 0;
+#X connect 11 0 15 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 2;
+#X connect 14 0 0 2;
+#X connect 14 1 0 3;
+#X connect 14 2 1 2;
+#X connect 14 3 1 3;
+#X connect 15 0 12 0;
+#X connect 16 0 14 0;
+#X connect 17 0 0 0;
+#X connect 17 0 1 0;
+#X connect 21 0 10 1;
+#X connect 22 0 5 0;
+#X connect 22 0 7 1;
+#X connect 22 0 7 0;
+#X connect 23 0 10 0;
+#X connect 23 0 13 1;
+#X connect 23 0 16 1;
+#X restore 12 89 pd zeros;
+#X obj 12 52 *~;
+#N canvas 1083 390 288 282 poles 0;
+#X obj 12 181 cpole~;
+#X obj 12 228 cpole~;
+#X obj 12 249 outlet~;
+#X obj 12 31 inlet~;
+#X obj 62 31 inlet~;
+#N canvas 739 258 279 198 location 0;
+#X obj 12 12 inlet~;
+#X obj 127 12 inlet~;
+#X obj 222 49 inlet~;
+#X obj 12 155 outlet~;
+#X obj 62 155 outlet~;
+#X obj 112 155 outlet~;
+#X obj 172 155 outlet~;
+#N canvas 796 341 183 142 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 679 326 140 75 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 754 439 132 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 39 pd gte;
+#N canvas 816 493 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 142 76 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 131 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 172 39 pd lte;
+#X obj 12 83 +~;
+#X obj 205 12 sig~ 0;
+#X obj 127 66 *~;
+#X obj 172 66 *~;
+#X obj 112 133 -~;
+#X obj 172 133 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 155 pd location;
+#X obj 72 78 *~ 0.5;
+#X obj 122 57 *~;
+#X obj 122 78 +~;
+#X obj 182 64 *~ 4;
+#X obj 122 99 abs~;
+#X obj 122 141 *~ 0.5;
+#X obj 122 120 sqrt~;
+#X obj 232 167 inlet;
+#X text 182 11 a2;
+#X text 122 11 a1;
+#X obj 122 31 inlet~;
+#X obj 182 31 inlet~;
+#X text 232 147 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 1;
+#X connect 5 0 0 2;
+#X connect 5 1 0 3;
+#X connect 5 2 1 2;
+#X connect 5 3 1 3;
+#X connect 6 0 5 0;
+#X connect 7 0 8 0;
+#X connect 8 0 5 1;
+#X connect 8 0 10 0;
+#X connect 9 0 8 1;
+#X connect 10 0 12 0;
+#X connect 11 0 5 2;
+#X connect 12 0 11 0;
+#X connect 13 0 0 0;
+#X connect 13 0 1 0;
+#X connect 16 0 6 0;
+#X connect 16 0 7 0;
+#X connect 16 0 7 1;
+#X connect 17 0 9 0;
+#X restore 12 133 pd poles;
+#X obj 12 159 outlet~;
+#X obj 212 119 *~ -1;
+#X obj 262 119 *~ -1;
+#X obj 312 75 inlet;
+#X obj 62 31 inlet~;
+#X obj 112 31 inlet~;
+#X obj 162 31 inlet~;
+#X obj 212 31 inlet~;
+#X obj 262 31 inlet~;
+#X text 62 11 b0;
+#X text 112 11 b1;
+#X text 162 11 b2;
+#X text 212 11 a1;
+#X text 262 11 a2;
+#X text 312 55 clear;
+#X connect 0 0 2 0;
+#X connect 1 0 3 0;
+#X connect 1 1 3 1;
+#X connect 2 0 1 0;
+#X connect 3 0 4 0;
+#X connect 5 0 3 2;
+#X connect 6 0 3 3;
+#X connect 7 0 1 4;
+#X connect 7 0 3 4;
+#X connect 8 0 2 1;
+#X connect 8 0 1 1;
+#X connect 9 0 1 2;
+#X connect 10 0 1 3;
+#X connect 11 0 5 0;
+#X connect 12 0 6 0;
+#X restore 12 88 pd @hv_obj biquad;
+#X obj 12 31 inlet~;
+#X obj 243 51 inlet;
+#X msg 243 72 clear;
+#X obj 82 31 inlet~;
+#X obj 193 31 inlet~;
+#X text 12 11 (I1) Input;
+#X text 82 11 (I2) Frequency;
+#X text 193 11 (I3) Q Factor;
+#X text 243 31 (I4) Clear internal state;
+#X text 12 129 (O1) Output;
+#X connect 0 0 2 1;
+#X connect 0 1 2 2;
+#X connect 0 2 2 3;
+#X connect 0 3 2 4;
+#X connect 0 4 2 5;
+#X connect 2 0 1 0;
+#X connect 3 0 2 0;
+#X connect 4 0 5 0;
+#X connect 5 0 2 6;
+#X connect 6 0 0 0;
+#X connect 7 0 0 1;

+ 457 - 0
abs/fi.highpass~.pd

@@ -0,0 +1,457 @@
+#N canvas 1019 768 414 167 10;
+#N canvas 157 455 682 351 highpass.coeffs 0;
+#X obj 12 42 clip~ 20 20000;
+#X obj 283 51 clip~ 0.1 100;
+#X obj 268 73 sig~ 1;
+#X obj 268 95 /~;
+#X obj 268 117 *~;
+#X obj 268 139 *~ 0.5;
+#X obj 12 216 sig~ 1;
+#X obj 12 238 /~;
+#X obj 122 254 *~;
+#X obj 137 206 +~ 1;
+#X obj 137 232 *~ 0.5;
+#X obj 182 254 *~;
+#X obj 197 206 +~ 1;
+#X obj 197 232 *~ -1;
+#X obj 242 254 *~;
+#X obj 257 206 +~ 1;
+#X obj 257 232 *~ 0.5;
+#X obj 302 254 *~;
+#X obj 317 206 *~ -2;
+#X obj 377 210 sig~ 1;
+#X obj 377 232 -~;
+#X obj 362 254 *~;
+#X obj 57 221 +~ 1;
+#X text 348 141 w0 = 2*pi*f0*Fs;
+#X text 348 161 alpha = sin(w0)/(2*Q);
+#X text 512 176 a0 = 1 + alpha;
+#X text 512 216 a2 = 1 - alpha;
+#X text 512 196 a1 = -2*cos(w0);
+#X text 512 256 b1 = -(1 + cos(w0));
+#X text 512 236 b0 = (1 + cos(w0))/2;
+#X text 502 156 HPF:;
+#X text 512 276 b2 = (1 + cos(w0))/2;
+#X text 419 36 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2);
+#X text 377 51 H(z) = -----------------------------------------;
+#X text 419 66 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2);
+#X text 377 11 Audio-Cookbook:;
+#X text 377 91 http://musicdsp.org/files/Audio-EQ-Cookbook.txt;
+#X obj 12 20 inlet~;
+#X obj 283 29 inlet~;
+#X obj 12 85 *~ 6.28319;
+#X obj 12 63 /~ 44100;
+#X obj 110 26 loadbang;
+#X obj 110 47 samplerate~;
+#X obj 122 101 expr~ sin($v1);
+#X obj 12 190 expr~ cos($v1);
+#X text 122 296 (O1) b0;
+#X text 182 296 (O2) b1;
+#X text 242 296 (O3) b2;
+#X text 302 296 (O4) a1;
+#X text 362 296 (O5) a2;
+#X obj 122 276 outlet~;
+#X obj 182 276 outlet~;
+#X obj 242 276 outlet~;
+#X obj 302 276 outlet~;
+#X obj 362 276 outlet~;
+#X connect 0 0 40 0;
+#X connect 1 0 3 1;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 20 1;
+#X connect 5 0 22 0;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 7 0 11 0;
+#X connect 7 0 14 0;
+#X connect 7 0 17 0;
+#X connect 7 0 21 0;
+#X connect 8 0 50 0;
+#X connect 9 0 10 0;
+#X connect 10 0 8 1;
+#X connect 11 0 51 0;
+#X connect 12 0 13 0;
+#X connect 13 0 11 1;
+#X connect 14 0 52 0;
+#X connect 15 0 16 0;
+#X connect 16 0 14 1;
+#X connect 17 0 53 0;
+#X connect 18 0 17 1;
+#X connect 19 0 20 0;
+#X connect 20 0 21 1;
+#X connect 21 0 54 0;
+#X connect 22 0 7 1;
+#X connect 37 0 0 0;
+#X connect 38 0 1 0;
+#X connect 39 0 43 0;
+#X connect 39 0 44 0;
+#X connect 40 0 39 0;
+#X connect 41 0 42 0;
+#X connect 42 0 40 1;
+#X connect 43 0 4 1;
+#X connect 44 0 9 0;
+#X connect 44 0 12 0;
+#X connect 44 0 15 0;
+#X connect 44 0 18 0;
+#X restore 82 52 pd highpass.coeffs;
+#X obj 12 109 outlet~;
+#N canvas 776 547 365 190 @hv_obj 0;
+#X obj 12 31 inlet~;
+#N canvas 1097 522 303 331 zeros 0;
+#X obj 12 217 czero~;
+#X obj 12 273 czero~;
+#X obj 12 299 outlet~;
+#X obj 75 299 outlet~;
+#X obj 12 31 inlet~;
+#X obj 47 122 *~ -1;
+#X obj 47 143 *~ 0.5;
+#X obj 132 58 *~;
+#X obj 132 92 -~;
+#X obj 187 78 *~ 4;
+#X obj 187 57 *~;
+#X obj 132 113 abs~;
+#X obj 132 155 *~ 0.5;
+#X obj 132 176 /~;
+#N canvas 773 235 262 212 location 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 207 12 inlet~;
+#X obj 12 174 outlet~;
+#X obj 72 174 outlet~;
+#X obj 132 174 outlet~;
+#X obj 192 174 outlet~;
+#N canvas 725 189 180 137 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 758 270 144 76 @hv_obj 0;
+#X obj 62 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 945 362 136 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 62 49 pd gte;
+#N canvas 845 375 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 140 82 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 39 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 137 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 49 pd lte;
+#X obj 12 152 +~;
+#X obj 160 22 sig~ 0;
+#X obj 147 125 *~;
+#X obj 192 125 *~;
+#X obj 132 152 -~;
+#X obj 192 152 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 190 pd location;
+#X obj 132 134 sqrt~;
+#X obj 47 164 /~;
+#X obj 252 203 inlet;
+#X text 62 11 b0;
+#X text 132 11 b1;
+#X text 202 11 b2;
+#X obj 202 31 inlet~;
+#X obj 132 31 inlet~;
+#X obj 62 31 inlet~;
+#X text 252 183 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 4 0 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 16 0;
+#X connect 7 0 8 0;
+#X connect 8 0 11 0;
+#X connect 8 0 14 1;
+#X connect 9 0 8 1;
+#X connect 10 0 9 0;
+#X connect 11 0 15 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 2;
+#X connect 14 0 0 2;
+#X connect 14 1 0 3;
+#X connect 14 2 1 2;
+#X connect 14 3 1 3;
+#X connect 15 0 12 0;
+#X connect 16 0 14 0;
+#X connect 17 0 0 0;
+#X connect 17 0 1 0;
+#X connect 21 0 10 1;
+#X connect 22 0 5 0;
+#X connect 22 0 7 1;
+#X connect 22 0 7 0;
+#X connect 23 0 10 0;
+#X connect 23 0 13 1;
+#X connect 23 0 16 1;
+#X restore 12 89 pd zeros;
+#X obj 12 52 *~;
+#N canvas 1083 390 288 282 poles 0;
+#X obj 12 181 cpole~;
+#X obj 12 228 cpole~;
+#X obj 12 249 outlet~;
+#X obj 12 31 inlet~;
+#X obj 62 31 inlet~;
+#N canvas 739 258 279 198 location 0;
+#X obj 12 12 inlet~;
+#X obj 127 12 inlet~;
+#X obj 222 49 inlet~;
+#X obj 12 155 outlet~;
+#X obj 62 155 outlet~;
+#X obj 112 155 outlet~;
+#X obj 172 155 outlet~;
+#N canvas 796 341 183 142 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 679 326 140 75 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 754 439 132 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 39 pd gte;
+#N canvas 816 493 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 142 76 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 131 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 172 39 pd lte;
+#X obj 12 83 +~;
+#X obj 205 12 sig~ 0;
+#X obj 127 66 *~;
+#X obj 172 66 *~;
+#X obj 112 133 -~;
+#X obj 172 133 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 155 pd location;
+#X obj 72 78 *~ 0.5;
+#X obj 122 57 *~;
+#X obj 122 78 +~;
+#X obj 182 64 *~ 4;
+#X obj 122 99 abs~;
+#X obj 122 141 *~ 0.5;
+#X obj 122 120 sqrt~;
+#X obj 232 167 inlet;
+#X text 182 11 a2;
+#X text 122 11 a1;
+#X obj 122 31 inlet~;
+#X obj 182 31 inlet~;
+#X text 232 147 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 1;
+#X connect 5 0 0 2;
+#X connect 5 1 0 3;
+#X connect 5 2 1 2;
+#X connect 5 3 1 3;
+#X connect 6 0 5 0;
+#X connect 7 0 8 0;
+#X connect 8 0 5 1;
+#X connect 8 0 10 0;
+#X connect 9 0 8 1;
+#X connect 10 0 12 0;
+#X connect 11 0 5 2;
+#X connect 12 0 11 0;
+#X connect 13 0 0 0;
+#X connect 13 0 1 0;
+#X connect 16 0 6 0;
+#X connect 16 0 7 0;
+#X connect 16 0 7 1;
+#X connect 17 0 9 0;
+#X restore 12 133 pd poles;
+#X obj 12 159 outlet~;
+#X obj 212 119 *~ -1;
+#X obj 262 119 *~ -1;
+#X obj 312 75 inlet;
+#X obj 62 31 inlet~;
+#X obj 112 31 inlet~;
+#X obj 162 31 inlet~;
+#X obj 212 31 inlet~;
+#X obj 262 31 inlet~;
+#X text 62 11 b0;
+#X text 112 11 b1;
+#X text 162 11 b2;
+#X text 212 11 a1;
+#X text 262 11 a2;
+#X text 312 55 clear;
+#X connect 0 0 2 0;
+#X connect 1 0 3 0;
+#X connect 1 1 3 1;
+#X connect 2 0 1 0;
+#X connect 3 0 4 0;
+#X connect 5 0 3 2;
+#X connect 6 0 3 3;
+#X connect 7 0 1 4;
+#X connect 7 0 3 4;
+#X connect 8 0 2 1;
+#X connect 8 0 1 1;
+#X connect 9 0 1 2;
+#X connect 10 0 1 3;
+#X connect 11 0 5 0;
+#X connect 12 0 6 0;
+#X restore 12 88 pd @hv_obj biquad;
+#X obj 12 31 inlet~;
+#X obj 187 31 inlet~;
+#X obj 82 31 inlet~;
+#X obj 237 51 inlet;
+#X msg 237 72 clear;
+#X text 12 11 (I1) Input;
+#X text 82 11 (I2) Frequency;
+#X text 187 11 (I3) Q Factor;
+#X text 237 31 (I4) Clear internal state;
+#X text 12 129 (O1) Output;
+#X connect 0 0 2 1;
+#X connect 0 1 2 2;
+#X connect 0 2 2 3;
+#X connect 0 3 2 4;
+#X connect 0 4 2 5;
+#X connect 2 0 1 0;
+#X connect 3 0 2 0;
+#X connect 4 0 0 1;
+#X connect 5 0 0 0;
+#X connect 6 0 7 0;
+#X connect 7 0 2 6;

+ 475 - 0
abs/fi.lowpass~.pd

@@ -0,0 +1,475 @@
+#N canvas 1113 468 394 172 10;
+#N canvas 616 433 842 444 lowpass.coeffs 0;
+#X obj 350 170 sig~ 1;
+#X obj 350 191 /~;
+#X obj 335 212 *~;
+#X obj 335 238 *~ 0.5;
+#X obj 89 301 sig~ 1;
+#X obj 89 323 /~;
+#X obj 199 339 *~;
+#X obj 214 317 *~ 0.5;
+#X obj 259 339 *~;
+#X obj 319 339 *~;
+#X obj 379 339 *~;
+#X obj 394 295 *~ -2;
+#X obj 454 273 sig~ 1;
+#X obj 454 295 -~;
+#X obj 439 339 *~;
+#X obj 134 307 +~ 1;
+#X text 440 234 w0 = 2*pi*f0*Fs;
+#X text 440 254 alpha = sin(w0)/(2*Q);
+#X text 604 309 a2 = 1 - alpha;
+#X text 604 289 a1 = -2*cos(w0);
+#X text 469 144 H(z) = -----------------------------------------;
+#X text 469 104 Audio-Cookbook:;
+#X obj 214 273 sig~ 1;
+#X obj 214 295 -~;
+#X obj 274 273 sig~ 1;
+#X obj 274 295 -~;
+#X obj 334 317 *~ 0.5;
+#X obj 334 273 sig~ 1;
+#X obj 334 295 -~;
+#X text 511 159 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2);
+#X text 511 129 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2);
+#X text 604 269 a0 = 1 + alpha;
+#X text 604 329 b0 = (1 - cos(w0))/2;
+#X text 604 349 b1 = (1 - cos(w0));
+#X text 604 369 b2 = (1 - cos(w0))/2;
+#X text 594 249 LPF:;
+#X obj 89 158 /~ 44100;
+#X obj 157 12 loadbang;
+#X obj 134 101 samplerate~;
+#X obj 89 180 *~ 6.28319;
+#X obj 194 196 expr~ sin($v1);
+#X obj 89 279 expr~ cos($v1);
+#X obj 365 149 max~ 0.1;
+#X obj 12 116 inlet~;
+#X obj 365 128 inlet~;
+#X msg 157 33 bang;
+#X msg 184 122 1;
+#X obj 184 143 atan;
+#X obj 184 164 * 8;
+#X obj 157 54 t b b;
+#X obj 199 360 outlet~;
+#X obj 259 360 outlet~;
+#X obj 319 360 outlet~;
+#X obj 379 360 outlet~;
+#X obj 439 360 outlet~;
+#X text 469 184 https://www.musicdsp.org/en/latest/Filters/197-rbj-audio-eq-cookbook.html
+;
+#X text 199 380 (O1) b0;
+#X text 259 380 (O2) b1;
+#X text 319 380 (O3) b2;
+#X text 379 380 (O4) a1;
+#X text 439 380 (O5) a2;
+#X text 365 108 (I2) Q factor;
+#X text 12 96 (I1) Frequency;
+#X obj 12 137 clip~ 0 20000;
+#X connect 0 0 1 0;
+#X connect 1 0 2 1;
+#X connect 2 0 3 0;
+#X connect 3 0 13 1;
+#X connect 3 0 15 0;
+#X connect 4 0 5 0;
+#X connect 5 0 6 0;
+#X connect 5 0 8 0;
+#X connect 5 0 9 0;
+#X connect 5 0 10 0;
+#X connect 5 0 14 0;
+#X connect 6 0 50 0;
+#X connect 7 0 6 1;
+#X connect 8 0 51 0;
+#X connect 9 0 52 0;
+#X connect 10 0 53 0;
+#X connect 11 0 10 1;
+#X connect 12 0 13 0;
+#X connect 13 0 14 1;
+#X connect 14 0 54 0;
+#X connect 15 0 5 1;
+#X connect 22 0 23 0;
+#X connect 23 0 7 0;
+#X connect 24 0 25 0;
+#X connect 25 0 8 1;
+#X connect 26 0 9 1;
+#X connect 27 0 28 0;
+#X connect 28 0 26 0;
+#X connect 36 0 39 0;
+#X connect 37 0 45 0;
+#X connect 38 0 36 1;
+#X connect 39 0 40 0;
+#X connect 39 0 41 0;
+#X connect 40 0 2 0;
+#X connect 41 0 23 1;
+#X connect 41 0 25 1;
+#X connect 41 0 28 1;
+#X connect 41 0 11 0;
+#X connect 42 0 1 1;
+#X connect 43 0 63 0;
+#X connect 44 0 42 0;
+#X connect 45 0 49 0;
+#X connect 46 0 47 0;
+#X connect 47 0 48 0;
+#X connect 48 0 39 1;
+#X connect 49 0 38 0;
+#X connect 49 1 46 0;
+#X connect 63 0 36 0;
+#X restore 78 53 pd lowpass.coeffs;
+#X obj 12 110 outlet~;
+#N canvas 776 547 365 190 @hv_obj 0;
+#X obj 12 31 inlet~;
+#N canvas 1097 522 303 331 zeros 0;
+#X obj 12 217 czero~;
+#X obj 12 273 czero~;
+#X obj 12 299 outlet~;
+#X obj 75 299 outlet~;
+#X obj 12 31 inlet~;
+#X obj 47 122 *~ -1;
+#X obj 47 143 *~ 0.5;
+#X obj 132 58 *~;
+#X obj 132 92 -~;
+#X obj 187 78 *~ 4;
+#X obj 187 57 *~;
+#X obj 132 113 abs~;
+#X obj 132 155 *~ 0.5;
+#X obj 132 176 /~;
+#N canvas 773 235 262 212 location 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 207 12 inlet~;
+#X obj 12 174 outlet~;
+#X obj 72 174 outlet~;
+#X obj 132 174 outlet~;
+#X obj 192 174 outlet~;
+#N canvas 725 189 180 137 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 758 270 144 76 @hv_obj 0;
+#X obj 62 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 945 362 136 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 62 49 pd gte;
+#N canvas 845 375 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 140 82 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 39 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 137 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 49 pd lte;
+#X obj 12 152 +~;
+#X obj 160 22 sig~ 0;
+#X obj 147 125 *~;
+#X obj 192 125 *~;
+#X obj 132 152 -~;
+#X obj 192 152 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 190 pd location;
+#X obj 132 134 sqrt~;
+#X obj 47 164 /~;
+#X obj 252 203 inlet;
+#X text 62 11 b0;
+#X text 132 11 b1;
+#X text 202 11 b2;
+#X obj 202 31 inlet~;
+#X obj 132 31 inlet~;
+#X obj 62 31 inlet~;
+#X text 252 183 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 4 0 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 16 0;
+#X connect 7 0 8 0;
+#X connect 8 0 11 0;
+#X connect 8 0 14 1;
+#X connect 9 0 8 1;
+#X connect 10 0 9 0;
+#X connect 11 0 15 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 2;
+#X connect 14 0 0 2;
+#X connect 14 1 0 3;
+#X connect 14 2 1 2;
+#X connect 14 3 1 3;
+#X connect 15 0 12 0;
+#X connect 16 0 14 0;
+#X connect 17 0 0 0;
+#X connect 17 0 1 0;
+#X connect 21 0 10 1;
+#X connect 22 0 5 0;
+#X connect 22 0 7 1;
+#X connect 22 0 7 0;
+#X connect 23 0 10 0;
+#X connect 23 0 13 1;
+#X connect 23 0 16 1;
+#X restore 12 89 pd zeros;
+#X obj 12 52 *~;
+#N canvas 1083 390 288 282 poles 0;
+#X obj 12 181 cpole~;
+#X obj 12 228 cpole~;
+#X obj 12 249 outlet~;
+#X obj 12 31 inlet~;
+#X obj 62 31 inlet~;
+#N canvas 739 258 279 198 location 0;
+#X obj 12 12 inlet~;
+#X obj 127 12 inlet~;
+#X obj 222 49 inlet~;
+#X obj 12 155 outlet~;
+#X obj 62 155 outlet~;
+#X obj 112 155 outlet~;
+#X obj 172 155 outlet~;
+#N canvas 796 341 183 142 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 679 326 140 75 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 754 439 132 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 39 pd gte;
+#N canvas 816 493 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 142 76 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 131 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 172 39 pd lte;
+#X obj 12 83 +~;
+#X obj 205 12 sig~ 0;
+#X obj 127 66 *~;
+#X obj 172 66 *~;
+#X obj 112 133 -~;
+#X obj 172 133 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 155 pd location;
+#X obj 72 78 *~ 0.5;
+#X obj 122 57 *~;
+#X obj 122 78 +~;
+#X obj 182 64 *~ 4;
+#X obj 122 99 abs~;
+#X obj 122 141 *~ 0.5;
+#X obj 122 120 sqrt~;
+#X obj 232 167 inlet;
+#X text 182 11 a2;
+#X text 122 11 a1;
+#X obj 122 31 inlet~;
+#X obj 182 31 inlet~;
+#X text 232 147 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 1;
+#X connect 5 0 0 2;
+#X connect 5 1 0 3;
+#X connect 5 2 1 2;
+#X connect 5 3 1 3;
+#X connect 6 0 5 0;
+#X connect 7 0 8 0;
+#X connect 8 0 5 1;
+#X connect 8 0 10 0;
+#X connect 9 0 8 1;
+#X connect 10 0 12 0;
+#X connect 11 0 5 2;
+#X connect 12 0 11 0;
+#X connect 13 0 0 0;
+#X connect 13 0 1 0;
+#X connect 16 0 6 0;
+#X connect 16 0 7 0;
+#X connect 16 0 7 1;
+#X connect 17 0 9 0;
+#X restore 12 133 pd poles;
+#X obj 12 159 outlet~;
+#X obj 212 117 *~ -1;
+#X obj 262 117 *~ -1;
+#X obj 312 73 inlet;
+#X obj 62 31 inlet~;
+#X obj 112 31 inlet~;
+#X obj 162 31 inlet~;
+#X obj 212 31 inlet~;
+#X obj 262 31 inlet~;
+#X text 62 11 b0;
+#X text 112 11 b1;
+#X text 162 11 b2;
+#X text 212 11 a1;
+#X text 262 11 a2;
+#X text 312 53 clear;
+#X connect 0 0 2 0;
+#X connect 1 0 3 0;
+#X connect 1 1 3 1;
+#X connect 2 0 1 0;
+#X connect 3 0 4 0;
+#X connect 5 0 3 2;
+#X connect 6 0 3 3;
+#X connect 7 0 1 4;
+#X connect 7 0 3 4;
+#X connect 8 0 2 1;
+#X connect 8 0 1 1;
+#X connect 9 0 1 2;
+#X connect 10 0 1 3;
+#X connect 11 0 5 0;
+#X connect 12 0 6 0;
+#X restore 12 89 pd @hv_obj biquad;
+#X obj 12 31 inlet~;
+#X obj 177 32 inlet~;
+#X obj 78 31 inlet~;
+#X obj 227 52 inlet;
+#X msg 227 73 clear;
+#X text 78 11 (I2) Frequency;
+#X text 177 12 (I3) Q Factor;
+#X text 227 32 (I4) Clear internal state;
+#X text 12 11 (I1) Input;
+#X text 12 130 (O1) Output;
+#X connect 0 0 2 1;
+#X connect 0 1 2 2;
+#X connect 0 2 2 3;
+#X connect 0 3 2 4;
+#X connect 0 4 2 5;
+#X connect 2 0 1 0;
+#X connect 3 0 2 0;
+#X connect 4 0 0 1;
+#X connect 5 0 0 0;
+#X connect 6 0 7 0;
+#X connect 7 0 2 6;

+ 66 - 0
abs/fx.chorus~.pd

@@ -0,0 +1,66 @@
+#N canvas 412 336 926 235 10;
+#X obj 12 63 osc~ 0.05;
+#X obj 12 84 *~ 10;
+#X obj 12 105 +~ 11;
+#X obj 102 105 +~ 21;
+#X obj 102 63 osc~ 0.08;
+#X obj 192 83 *~ 10;
+#X obj 192 63 osc~ 0.13;
+#X obj 192 105 +~ 13;
+#X obj 282 63 osc~ 0.21;
+#X obj 282 105 +~ 34;
+#X obj 372 105 +~ 55;
+#X obj 372 63 osc~ 0.03;
+#X obj 462 105 +~ 87;
+#X obj 552 63 osc~ 0.12;
+#X obj 552 105 +~ 67;
+#X obj 12 126 vd~ \$0-chorus;
+#X obj 12 33 delwrite~ \$0-chorus 500;
+#X obj 12 12 inlet~;
+#X obj 102 126 vd~ \$0-chorus;
+#X obj 192 126 vd~ \$0-chorus;
+#X obj 282 126 vd~ \$0-chorus;
+#X obj 372 126 vd~ \$0-chorus;
+#X obj 462 126 vd~ \$0-chorus;
+#X obj 552 126 vd~ \$0-chorus;
+#X obj 12 183 outlet~;
+#X obj 102 84 *~ 20;
+#X obj 282 84 *~ 30;
+#X obj 372 84 *~ 50;
+#X obj 12 161 /~ 2;
+#X obj 552 84 *~ 10;
+#X obj 462 63 osc~ 8;
+#X obj 462 84 *~ 1;
+#X obj 472 183 outlet~;
+#X obj 472 161 /~ 2;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 15 0;
+#X connect 3 0 18 0;
+#X connect 4 0 25 0;
+#X connect 5 0 7 0;
+#X connect 6 0 5 0;
+#X connect 7 0 19 0;
+#X connect 8 0 26 0;
+#X connect 9 0 20 0;
+#X connect 10 0 21 0;
+#X connect 11 0 27 0;
+#X connect 12 0 22 0;
+#X connect 13 0 29 0;
+#X connect 14 0 23 0;
+#X connect 15 0 28 0;
+#X connect 17 0 16 0;
+#X connect 18 0 28 0;
+#X connect 19 0 28 0;
+#X connect 20 0 28 0;
+#X connect 21 0 33 0;
+#X connect 22 0 33 0;
+#X connect 23 0 33 0;
+#X connect 25 0 3 0;
+#X connect 26 0 9 0;
+#X connect 27 0 10 0;
+#X connect 28 0 24 0;
+#X connect 29 0 14 0;
+#X connect 30 0 31 0;
+#X connect 31 0 12 0;
+#X connect 33 0 32 0;

+ 70 - 0
abs/fx.downsample2~.pd

@@ -0,0 +1,70 @@
+#N canvas 574 162 360 273 10;
+#X obj 12 136 samphold~;
+#N canvas 453 305 166 159 triangle 0;
+#X obj 33 38 *~ -1;
+#X obj 33 59 +~ 1;
+#X obj 12 80 min~;
+#X obj 12 101 *~ 2;
+#X obj 12 122 outlet~;
+#X obj 12 12 inlet~;
+#X connect 0 0 1 0;
+#X connect 1 0 2 1;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 5 0 2 0;
+#X connect 5 0 0 0;
+#X restore 106 141 pd triangle;
+#X obj 12 157 *~;
+#X obj 214 136 samphold~;
+#X obj 184 162 *~;
+#X obj 282 89 +~ 0.5;
+#X obj 282 110 wrap~;
+#X obj 12 178 +~;
+#X obj 106 120 wrap~;
+#X obj 12 31 inlet~;
+#X obj 106 31 inlet~;
+#X obj 106 73 phasor~;
+#X obj 12 199 outlet~;
+#X obj 106 52 /~ 2;
+#X text 12 11 (I1) Input;
+#N canvas 453 305 166 159 triangle 0;
+#X obj 33 38 *~ -1;
+#X obj 33 59 +~ 1;
+#X obj 12 80 min~;
+#X obj 12 101 *~ 2;
+#X obj 12 122 outlet~;
+#X obj 12 12 inlet~;
+#X connect 0 0 1 0;
+#X connect 1 0 2 1;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 5 0 2 0;
+#X connect 5 0 0 0;
+#X restore 282 146 pd triangle;
+#X text 106 11 (I2) Samplerate;
+#X text 12 219 (O1) Interpolated Output;
+#X obj 199 192 +~;
+#X obj 199 213 /~ 2;
+#X obj 199 234 outlet~;
+#X connect 0 0 2 0;
+#X connect 0 0 18 0;
+#X connect 1 0 2 1;
+#X connect 2 0 7 0;
+#X connect 3 0 4 0;
+#X connect 3 0 18 1;
+#X connect 4 0 7 1;
+#X connect 5 0 6 0;
+#X connect 6 0 3 1;
+#X connect 6 0 15 0;
+#X connect 7 0 12 0;
+#X connect 8 0 0 1;
+#X connect 8 0 1 0;
+#X connect 9 0 0 0;
+#X connect 9 0 3 0;
+#X connect 10 0 13 0;
+#X connect 11 0 5 0;
+#X connect 11 0 8 0;
+#X connect 13 0 11 0;
+#X connect 15 0 4 1;
+#X connect 18 0 19 0;
+#X connect 19 0 20 0;

+ 72 - 0
abs/fx.downsample~.pd

@@ -0,0 +1,72 @@
+#N canvas 574 22 360 273 10;
+#X obj 12 136 samphold~;
+#N canvas 453 305 166 159 triangle 0;
+#X obj 33 38 *~ -1;
+#X obj 33 59 +~ 1;
+#X obj 12 80 min~;
+#X obj 12 101 *~ 2;
+#X obj 12 122 outlet~;
+#X obj 12 12 inlet~;
+#X connect 0 0 1 0;
+#X connect 1 0 2 1;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 5 0 2 0;
+#X connect 5 0 0 0;
+#X restore 106 141 pd triangle;
+#X obj 12 157 *~;
+#X obj 214 136 samphold~;
+#X obj 184 162 *~;
+#X obj 282 89 +~ 0.5;
+#X obj 282 110 wrap~;
+#X obj 12 178 +~;
+#X obj 106 120 wrap~;
+#X obj 12 31 inlet~;
+#X obj 106 31 inlet~;
+#X obj 106 73 phasor~;
+#X obj 12 199 outlet~;
+#X obj 106 52 /~ 2;
+#X text 12 11 (I1) Input;
+#N canvas 453 305 166 159 triangle 0;
+#X obj 33 38 *~ -1;
+#X obj 33 59 +~ 1;
+#X obj 12 80 min~;
+#X obj 12 101 *~ 2;
+#X obj 12 122 outlet~;
+#X obj 12 12 inlet~;
+#X connect 0 0 1 0;
+#X connect 1 0 2 1;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 5 0 2 0;
+#X connect 5 0 0 0;
+#X restore 282 146 pd triangle;
+#X text 106 11 (I2) Samplerate;
+#X text 12 219 (O1) Interpolated Output;
+#X obj 199 192 +~;
+#X obj 199 213 /~ 2;
+#X obj 199 234 outlet~;
+#X obj 106 94 +~ 0;
+#X connect 0 0 2 0;
+#X connect 0 0 18 0;
+#X connect 1 0 2 1;
+#X connect 2 0 7 0;
+#X connect 3 0 4 0;
+#X connect 3 0 18 1;
+#X connect 4 0 7 1;
+#X connect 5 0 6 0;
+#X connect 6 0 15 0;
+#X connect 6 0 3 1;
+#X connect 7 0 12 0;
+#X connect 8 0 0 1;
+#X connect 8 0 1 0;
+#X connect 9 0 0 0;
+#X connect 9 0 3 0;
+#X connect 10 0 13 0;
+#X connect 11 0 5 0;
+#X connect 11 0 21 0;
+#X connect 13 0 11 0;
+#X connect 15 0 4 1;
+#X connect 18 0 19 0;
+#X connect 19 0 20 0;
+#X connect 21 0 8 0;

+ 197 - 0
abs/granular.pd

@@ -0,0 +1,197 @@
+#N canvas 85 22 979 641 10;
+#X obj 6 12 inlet~;
+#X obj 6 54 delwrite~ \$0-granular 4000;
+#X obj 11 98 loadbang;
+#X msg 11 119 1;
+#X obj 11 203 s \$0-clock;
+#X obj 177 8 r \$0-clock;
+#X obj 177 29 == 0;
+#X obj 177 50 sel 1;
+#X obj 177 125 random 4000;
+#X obj 317 171 vline~;
+#X obj 177 187 *~;
+#X obj 173 588 outlet~;
+#X obj 173 504 catch~ \$0-output;
+#X obj 11 161 i;
+#X obj 11 182 % 6;
+#X obj 41 161 + 1;
+#X obj 177 166 delread4~ \$0-granular;
+#X obj 177 146 - 2000;
+#X obj 317 66 random 24;
+#X obj 317 108 + 100;
+#X obj 317 129 dbtorms;
+#X obj 317 87 * -1;
+#X msg 317 150 \$1 50 \, 0 50 50;
+#X obj 177 208 throw~ \$0-output;
+#X obj 427 8 r \$0-clock;
+#X obj 427 50 sel 1;
+#X obj 427 125 random 4000;
+#X obj 567 171 vline~;
+#X obj 427 187 *~;
+#X obj 427 166 delread4~ \$0-granular;
+#X obj 427 146 - 2000;
+#X obj 567 66 random 24;
+#X obj 567 108 + 100;
+#X obj 567 129 dbtorms;
+#X obj 567 87 * -1;
+#X msg 567 150 \$1 50 \, 0 50 50;
+#X obj 427 208 throw~ \$0-output;
+#X obj 427 29 == 1;
+#X obj 667 8 r \$0-clock;
+#X obj 667 50 sel 1;
+#X obj 667 125 random 4000;
+#X obj 807 171 vline~;
+#X obj 667 187 *~;
+#X obj 667 166 delread4~ \$0-granular;
+#X obj 667 146 - 2000;
+#X obj 807 66 random 24;
+#X obj 807 108 + 100;
+#X obj 807 129 dbtorms;
+#X obj 807 87 * -1;
+#X msg 807 150 \$1 50 \, 0 50 50;
+#X obj 667 208 throw~ \$0-output;
+#X obj 667 29 == 2;
+#X obj 177 258 r \$0-clock;
+#X obj 177 300 sel 1;
+#X obj 177 375 random 4000;
+#X obj 317 421 vline~;
+#X obj 177 437 *~;
+#X obj 177 416 delread4~ \$0-granular;
+#X obj 177 396 - 2000;
+#X obj 317 316 random 24;
+#X obj 317 358 + 100;
+#X obj 317 379 dbtorms;
+#X obj 317 337 * -1;
+#X msg 317 400 \$1 50 \, 0 50 50;
+#X obj 177 458 throw~ \$0-output;
+#X obj 427 258 r \$0-clock;
+#X obj 427 300 sel 1;
+#X obj 427 375 random 4000;
+#X obj 567 421 vline~;
+#X obj 427 437 *~;
+#X obj 427 416 delread4~ \$0-granular;
+#X obj 427 396 - 2000;
+#X obj 567 316 random 24;
+#X obj 567 358 + 100;
+#X obj 567 379 dbtorms;
+#X obj 567 337 * -1;
+#X msg 567 400 \$1 50 \, 0 50 50;
+#X obj 427 458 throw~ \$0-output;
+#X obj 667 258 r \$0-clock;
+#X obj 667 300 sel 1;
+#X obj 667 375 random 4000;
+#X obj 807 421 vline~;
+#X obj 667 437 *~;
+#X obj 667 416 delread4~ \$0-granular;
+#X obj 667 396 - 2000;
+#X obj 807 316 random 24;
+#X obj 807 358 + 100;
+#X obj 807 379 dbtorms;
+#X obj 807 337 * -1;
+#X msg 807 400 \$1 50 \, 0 50 50;
+#X obj 667 458 throw~ \$0-output;
+#X obj 177 279 == 3;
+#X obj 427 279 == 4;
+#X obj 667 279 == 5;
+#X obj 11 140 metro 25;
+#X obj 6 33 +~;
+#X obj 173 525 lop~ 2000;
+#X obj 173 546 lop~ 4000;
+#X obj 173 567 *~ 16;
+#X connect 0 0 95 0;
+#X connect 2 0 3 0;
+#X connect 3 0 94 0;
+#X connect 5 0 6 0;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 7 0 18 0;
+#X connect 8 0 17 0;
+#X connect 9 0 10 1;
+#X connect 10 0 23 0;
+#X connect 12 0 96 0;
+#X connect 13 0 14 0;
+#X connect 14 0 15 0;
+#X connect 14 0 4 0;
+#X connect 15 0 13 1;
+#X connect 16 0 10 0;
+#X connect 17 0 16 0;
+#X connect 18 0 21 0;
+#X connect 19 0 20 0;
+#X connect 20 0 22 0;
+#X connect 21 0 19 0;
+#X connect 22 0 9 0;
+#X connect 24 0 37 0;
+#X connect 25 0 26 0;
+#X connect 25 0 31 0;
+#X connect 26 0 30 0;
+#X connect 27 0 28 1;
+#X connect 28 0 36 0;
+#X connect 29 0 28 0;
+#X connect 30 0 29 0;
+#X connect 31 0 34 0;
+#X connect 32 0 33 0;
+#X connect 33 0 35 0;
+#X connect 34 0 32 0;
+#X connect 35 0 27 0;
+#X connect 37 0 25 0;
+#X connect 38 0 51 0;
+#X connect 39 0 40 0;
+#X connect 39 0 45 0;
+#X connect 40 0 44 0;
+#X connect 41 0 42 1;
+#X connect 42 0 50 0;
+#X connect 43 0 42 0;
+#X connect 44 0 43 0;
+#X connect 45 0 48 0;
+#X connect 46 0 47 0;
+#X connect 47 0 49 0;
+#X connect 48 0 46 0;
+#X connect 49 0 41 0;
+#X connect 51 0 39 0;
+#X connect 52 0 91 0;
+#X connect 53 0 54 0;
+#X connect 53 0 59 0;
+#X connect 54 0 58 0;
+#X connect 55 0 56 1;
+#X connect 56 0 64 0;
+#X connect 57 0 56 0;
+#X connect 58 0 57 0;
+#X connect 59 0 62 0;
+#X connect 60 0 61 0;
+#X connect 61 0 63 0;
+#X connect 62 0 60 0;
+#X connect 63 0 55 0;
+#X connect 65 0 92 0;
+#X connect 66 0 67 0;
+#X connect 66 0 72 0;
+#X connect 67 0 71 0;
+#X connect 68 0 69 1;
+#X connect 69 0 77 0;
+#X connect 70 0 69 0;
+#X connect 71 0 70 0;
+#X connect 72 0 75 0;
+#X connect 73 0 74 0;
+#X connect 74 0 76 0;
+#X connect 75 0 73 0;
+#X connect 76 0 68 0;
+#X connect 78 0 93 0;
+#X connect 79 0 80 0;
+#X connect 79 0 85 0;
+#X connect 80 0 84 0;
+#X connect 81 0 82 1;
+#X connect 82 0 90 0;
+#X connect 83 0 82 0;
+#X connect 84 0 83 0;
+#X connect 85 0 88 0;
+#X connect 86 0 87 0;
+#X connect 87 0 89 0;
+#X connect 88 0 86 0;
+#X connect 89 0 81 0;
+#X connect 91 0 53 0;
+#X connect 92 0 66 0;
+#X connect 93 0 79 0;
+#X connect 94 0 13 0;
+#X connect 95 0 1 0;
+#X connect 96 0 97 0;
+#X connect 97 0 98 0;
+#X connect 98 0 11 0;

+ 35 - 0
abs/gui.sliderh.pd

@@ -0,0 +1,35 @@
+#N canvas 1306 274 405 568 10;
+#X obj 43 40 hsl 128 20 0 127 0 0 \$0-s-slider \$0-r-slider empty -2 -8 0 10 #000000 #ffffff #000000 0 1;
+#X obj 43 43 cnv 1 1 14 \$0-s-canvas \$0-r-canvas empty 20 12 0 14 #ff7fda #404040 0;
+#X obj 137 308 r \$0-s-slider;
+#X obj 137 350 s \$0-r-canvas;
+#X obj 135 144 savestate;
+#X obj 214 144 r \$0-s-slider;
+#X obj 199 167 f;
+#X obj 81 167 loadbang;
+#X obj 81 188 f;
+#X obj 81 209 s \$0-r-slider;
+#X msg 137 329 vis_size \$1 14;
+#X obj 40 65 outlet;
+#X obj 289 268 loadbang;
+#X obj 289 310 list prepend color;
+#X obj 289 331 list trim;
+#X obj 289 352 s \$0-r-canvas;
+#X obj 192 86 r \$1;
+#X obj 289 289 symbol \$2;
+#X obj 192 107 s \$0-r-slider;
+#X connect 0 0 11 0;
+#X connect 2 0 10 0;
+#X connect 4 0 8 1;
+#X connect 4 1 6 0;
+#X connect 5 0 6 1;
+#X connect 6 0 4 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 10 0 3 0;
+#X connect 12 0 17 0;
+#X connect 13 0 14 0;
+#X connect 14 0 15 0;
+#X connect 16 0 18 0;
+#X connect 17 0 13 0;
+#X coords 0 -1 1 1 133 20 2 40 40;

+ 45 - 0
abs/gui.sliderv.pd

@@ -0,0 +1,45 @@
+#N canvas 334 34 405 568 10;
+#X obj 137 308 r \$0-s-slider;
+#X obj 137 420 s \$0-r-canvas;
+#X obj 175 144 savestate;
+#X obj 254 144 r \$0-s-slider;
+#X obj 239 167 f;
+#X obj 121 167 loadbang;
+#X obj 121 188 f;
+#X obj 121 209 s \$0-r-slider;
+#X msg 137 399 vis_size 14 \$1;
+#X obj 40 42 vsl 20 128 0 127 0 0 \$0-s-slider \$0-r-slider empty 0 -9 0 10 #000000 #ffffff #000000 0 1;
+#X obj 43 43 cnv 1 14 126 \$0-s-canvas \$0-r-canvas empty 20 12 0 14 #ff0000 #404040 0;
+#X msg 255 332 127 \$1;
+#X obj 255 353 -;
+#X obj 255 425 s \$0-r-canvas;
+#X msg 255 404 pos 43 \$1;
+#X obj 255 374 + 42;
+#X obj 40 178 outlet;
+#X obj 275 211 loadbang;
+#X obj 275 253 list prepend color;
+#X obj 275 274 list trim;
+#X obj 275 295 s \$0-r-canvas;
+#X obj 178 29 r \$1;
+#X obj 275 232 symbol \$2;
+#X obj 178 50 s \$0-r-slider;
+#X connect 0 0 8 0;
+#X connect 0 0 11 0;
+#X connect 2 0 6 1;
+#X connect 2 1 4 0;
+#X connect 3 0 4 1;
+#X connect 4 0 2 0;
+#X connect 5 0 6 0;
+#X connect 6 0 7 0;
+#X connect 8 0 1 0;
+#X connect 9 0 16 0;
+#X connect 11 0 12 0;
+#X connect 12 0 15 0;
+#X connect 14 0 13 0;
+#X connect 15 0 14 0;
+#X connect 17 0 22 0;
+#X connect 18 0 19 0;
+#X connect 19 0 20 0;
+#X connect 21 0 23 0;
+#X connect 22 0 18 0;
+#X coords 0 -1 1 1 20 133 2 40 40;

+ 24 - 0
abs/ma.tanh~.pd

@@ -0,0 +1,24 @@
+#N canvas 254 82 375 222 10;
+#X obj 12 12 inlet~;
+#X obj 12 38 clip~ -3 3;
+#X obj 27 64 *~;
+#X obj 12 192 outlet~;
+#X obj 27 140 /~;
+#X obj 12 166 *~;
+#X obj 67 90 *~ 9;
+#X text 92 42 // http://www.musicdsp.org/showone.php?id=238;
+#X text 92 62 // y = x * (27 + x^2) / (27 + 9*x^2);
+#X obj 27 90 +~ 27;
+#X obj 67 116 +~ 27;
+#X text 92 22 // pade-approximation of tanh function;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 1 0 2 1;
+#X connect 1 0 5 0;
+#X connect 2 0 9 0;
+#X connect 2 0 6 0;
+#X connect 4 0 5 1;
+#X connect 5 0 3 0;
+#X connect 6 0 10 0;
+#X connect 9 0 4 0;
+#X connect 10 0 4 1;

+ 55 - 0
abs/no.pinknoise~.pd

@@ -0,0 +1,55 @@
+#N canvas 558 152 470 341 10;
+#X obj 12 78 noise~;
+#X obj 121 94 *~ 0.099046;
+#X text 149 72 b0;
+#X text 267 73 b1;
+#X text 367 72 b2;
+#X obj 241 94 *~ 0.296516;
+#X obj 341 94 *~ 1.05269;
+#X obj 12 152 +~;
+#X obj 12 173 +~;
+#X obj 12 126 *~ 0.1848;
+#X obj 12 194 +~;
+#X obj 12 237 outlet~;
+#X text 142 192 http://www.firstpr.com.au/dsp/pink-noise/;
+#X obj 12 215 *~ 0.2;
+#X obj 154 115 sig~ 0.99765;
+#X obj 274 115 sig~ 0.963;
+#X obj 374 115 sig~ 0.57;
+#X obj 121 136 rpole~;
+#X obj 241 136 rpole~;
+#X obj 341 136 rpole~;
+#X text 142 212 Paul Kellet's economy method:;
+#X text 142 232 b0 = 0.99765 * b0 + white * 0.099046 \;;
+#X text 142 252 b1 = 0.963 * b1 + white * 0.296516 \;;
+#X text 142 272 b2 = 0.57 * b2 + white * 1.05269 \;;
+#X text 142 292 tmp = b0 + b1 + b2 + white * 0.1848 \;;
+#X text 12 257 (01) Output;
+#X obj 48 31 inlet;
+#X obj 48 52 t a b;
+#X msg 75 120 clear;
+#X text 48 11 (I1) Reset noise's seed and filter's state;
+#X connect 0 0 1 0;
+#X connect 0 0 5 0;
+#X connect 0 0 6 0;
+#X connect 0 0 9 0;
+#X connect 1 0 17 0;
+#X connect 5 0 18 0;
+#X connect 6 0 19 0;
+#X connect 7 0 8 0;
+#X connect 8 0 10 0;
+#X connect 9 0 7 0;
+#X connect 10 0 13 0;
+#X connect 13 0 11 0;
+#X connect 14 0 17 1;
+#X connect 15 0 18 1;
+#X connect 16 0 19 1;
+#X connect 17 0 7 1;
+#X connect 18 0 8 1;
+#X connect 19 0 10 1;
+#X connect 26 0 27 0;
+#X connect 27 0 0 0;
+#X connect 27 1 28 0;
+#X connect 28 0 17 0;
+#X connect 28 0 19 0;
+#X connect 28 0 18 0;

+ 79 - 0
abs/os.saw~-help.pd

@@ -0,0 +1,79 @@
+#N canvas 922 351 611 513 10;
+#X obj 149 307 tgl 17 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
+1;
+#X obj 149 351 tabwrite~ \$0-scope;
+#X floatatom 12 132 9 0 0 1 Hz - -;
+#N canvas 0 22 450 278 (subpatch) 0;
+#X array \$0-scope 256 float 0;
+#X coords 0 1 256 -1 256 101 2 0 0;
+#X restore 271 350 graph;
+#X floatatom 12 90 5 0 0 0 - - -;
+#X obj 12 109 mtof;
+#X obj 12 364 clip~ -1 1;
+#X obj 12 386 hip~ 3;
+#X obj 12 68 line;
+#X obj 12 151 sig~;
+#X msg 12 46 135 \, 40 10000;
+#X obj 12 310 *~;
+#X obj 149 263 loadbang;
+#X msg 149 285 1;
+#X obj 12 24 bng 17 250 50 0 empty empty FREQUENCY-SWEEP 0 -9 0 10
+-262144 -1 -1;
+#X obj 70 71 loadbang;
+#X text 226 64 The output can get a bit noisy at upper frequencies
+\, but reduces effects of aliasing when using a phasor~ and doesn't
+require wavetables.;
+#X text 236 275 http://musicdsp.org/files/bandlimited.pdf;
+#X text 236 290 http://www.martin-finke.de/blog/articles/audio-plugins-018-polyblep-oscillator/
+;
+#X text 236 260 https://github.com/cfloisand/pd-externals/tree/master/Source
+;
+#X text 217 47 Polynomial band-limited step (Polystep) oscillator;
+#X obj 12 430 dac~ 1 2;
+#X text 363 479 https://github.com/MikeMorenoAudio;
+#X msg 70 93 44100 64;
+#X obj 70 115 /;
+#X obj 149 329 metro 50;
+#X obj 12 408 *~ 0.1;
+#X obj 12 337 *~ 1;
+#X text 363 459 Mike Moreno;
+#X text 56 154 inlet 0: signal/float;
+#X text 56 204 inlet 1: float;
+#X text 66 174 1) incoming float or signal sets the frequency of the
+oscillator (in Hz).;
+#X text 66 224 1) resets the phase.;
+#X text 406 144 outlet 0: signal;
+#X text 416 164 1) PolyBLEP Saw Wave;
+#X text 406 184 outlet 1: signal;
+#X text 236 244 https://github.com/enzienaudio/heavylib;
+#X text 226 214 References:;
+#X text 226 229 (Saw and Squares waves are the same from heavylib)
+;
+#X text 217 27 [pb.saw];
+#X text 416 204 1) PolyBLEP Sine Wave;
+#X obj 12 239 os.saw~;
+#X obj 27 288 tgl 17 0 empty empty LISTEN 0 -8 0 10 -262144 -1 -1 0
+1;
+#X connect 0 0 25 0;
+#X connect 2 0 9 0;
+#X connect 4 0 5 0;
+#X connect 5 0 2 0;
+#X connect 6 0 7 0;
+#X connect 7 0 26 0;
+#X connect 8 0 4 0;
+#X connect 9 0 41 0;
+#X connect 10 0 8 0;
+#X connect 11 0 27 0;
+#X connect 12 0 13 0;
+#X connect 13 0 0 0;
+#X connect 14 0 10 0;
+#X connect 15 0 23 0;
+#X connect 23 0 24 0;
+#X connect 24 0 2 0;
+#X connect 25 0 1 0;
+#X connect 26 0 21 0;
+#X connect 26 0 21 1;
+#X connect 27 0 1 0;
+#X connect 27 0 6 0;
+#X connect 41 0 11 0;
+#X connect 42 0 11 1;

+ 130 - 0
abs/os.saw~.pd

@@ -0,0 +1,130 @@
+#N canvas 940 627 414 332 10;
+#X obj 12 67 phasor~;
+#X obj 195 67 *~;
+#X obj 12 140 +~;
+#N canvas 1329 474 147 163 1/Fs 0;
+#X obj 12 54 samplerate~;
+#X obj 12 12 loadbang;
+#X msg 12 75 1 \$1;
+#X obj 12 96 /;
+#X msg 12 33 bang;
+#X obj 12 117 outlet;
+#X connect 0 0 2 0;
+#X connect 1 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 5 0;
+#X connect 4 0 0 0;
+#X restore 210 41 pd 1/Fs;
+#X obj 12 182 outlet~;
+#X obj 12 161 *~ -1;
+#X text 12 252 http://www.martin-finke.de/blog/articles/audio-plugins-018-polyblep-oscillator/
+;
+#X text 12 232 https://github.com/enzienaudio/heavylib/tree/master/hv.osc
+;
+#X obj 12 31 inlet~;
+#N canvas 1008 608 416 294 polyblep 0;
+#X obj 167 225 -~;
+#X obj 230 127 -~;
+#X obj 230 12 sig~ 1;
+#X obj 177 74 /~;
+#X obj 167 252 outlet~;
+#X obj 12 173 *~;
+#X obj 162 173 *~;
+#X obj 12 90 *~;
+#X obj 162 147 -~;
+#X obj 47 54 inlet~;
+#X text 47 34 (I1) Phase;
+#X obj 12 147 -~ 1;
+#X obj 177 120 -~ 1;
+#X text 245 38 (I2) Normalised Frequency;
+#X obj 32 199 *~;
+#X obj 182 199 *~;
+#N canvas 1389 528 164 179 >=~ 0;
+#X obj 47 64 -~;
+#X obj 47 85 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 47 148 outlet~;
+#X obj 47 127 *~ 1e+37;
+#X obj 12 38 min~;
+#X obj 47 106 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 197 153 pd >=~;
+#N canvas 1221 655 166 185 <=~ 0;
+#X obj 41 60 -~;
+#X obj 41 81 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 41 144 outlet~;
+#X obj 41 123 *~ 1e+37;
+#X obj 41 38 min~;
+#X obj 41 102 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 47 173 pd <=~;
+#X obj 245 58 inlet~;
+#X connect 0 0 4 0;
+#X connect 1 0 16 1;
+#X connect 2 0 3 0;
+#X connect 2 0 1 0;
+#X connect 3 0 7 1;
+#X connect 3 0 12 0;
+#X connect 5 0 14 0;
+#X connect 6 0 15 0;
+#X connect 7 0 8 0;
+#X connect 7 0 11 0;
+#X connect 8 0 6 0;
+#X connect 8 0 6 1;
+#X connect 9 0 7 0;
+#X connect 9 0 17 0;
+#X connect 9 0 16 0;
+#X connect 11 0 5 0;
+#X connect 11 0 5 1;
+#X connect 12 0 8 1;
+#X connect 14 0 0 0;
+#X connect 15 0 0 1;
+#X connect 16 0 15 1;
+#X connect 17 0 14 1;
+#X connect 18 0 1 1;
+#X connect 18 0 3 1;
+#X connect 18 0 17 1;
+#X restore 132 124 pd polyblep;
+#N canvas 1412 395 163 124 normalize 0;
+#X obj 12 75 outlet~;
+#X obj 12 12 inlet~;
+#X obj 12 54 -~ 1;
+#X obj 12 33 *~ 2;
+#X connect 1 0 3 0;
+#X connect 2 0 0 0;
+#X connect 3 0 2 0;
+#X restore 12 113 pd normalize;
+#X obj 111 31 inlet;
+#X text 111 11 (I2) Phase;
+#X text 12 11 (I1) Frequency;
+#X text 62 182 (O1) Sawtooth;
+#X text 12 282 https://github.com/cfloisand/pd-externals;
+#X text 12 212 References:;
+#X connect 0 0 10 0;
+#X connect 0 0 9 0;
+#X connect 1 0 9 1;
+#X connect 2 0 5 0;
+#X connect 3 0 1 1;
+#X connect 5 0 4 0;
+#X connect 8 0 0 0;
+#X connect 8 0 1 0;
+#X connect 9 0 2 1;
+#X connect 10 0 2 0;
+#X connect 11 0 0 1;

+ 253 - 0
abs/os.square~.pd

@@ -0,0 +1,253 @@
+#N canvas 1144 334 535 425 10;
+#X obj 12 67 phasor~;
+#X obj 195 47 *~;
+#X obj 12 190 +~;
+#N canvas 1329 474 147 163 1/Fs 0;
+#X obj 12 54 samplerate~;
+#X obj 12 12 loadbang;
+#X msg 12 75 1 \$1;
+#X obj 12 96 /;
+#X msg 12 33 bang;
+#X obj 12 117 outlet;
+#X connect 0 0 2 0;
+#X connect 1 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 5 0;
+#X connect 4 0 0 0;
+#X restore 210 21 pd 1/Fs;
+#X obj 12 232 outlet~;
+#X obj 12 211 *~ -1;
+#X text 12 352 http://www.martin-finke.de/blog/articles/audio-plugins-018-polyblep-oscillator/
+;
+#X text 12 332 https://github.com/enzienaudio/heavylib/tree/master/hv.osc
+;
+#X obj 12 31 inlet~;
+#N canvas 1008 608 416 294 polyblep 0;
+#X obj 167 225 -~;
+#X obj 230 127 -~;
+#X obj 230 12 sig~ 1;
+#X obj 177 74 /~;
+#X obj 167 252 outlet~;
+#X obj 12 173 *~;
+#X obj 162 173 *~;
+#X obj 12 90 *~;
+#X obj 162 147 -~;
+#X obj 47 54 inlet~;
+#X text 47 34 (I1) Phase;
+#X obj 12 147 -~ 1;
+#X obj 177 120 -~ 1;
+#X text 245 38 (I2) Normalised Frequency;
+#X obj 32 199 *~;
+#X obj 182 199 *~;
+#N canvas 1389 528 164 179 >=~ 0;
+#X obj 47 64 -~;
+#X obj 47 85 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 47 148 outlet~;
+#X obj 47 127 *~ 1e+37;
+#X obj 12 38 min~;
+#X obj 47 106 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 197 153 pd >=~;
+#N canvas 1221 655 166 185 <=~ 0;
+#X obj 41 60 -~;
+#X obj 41 81 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 41 144 outlet~;
+#X obj 41 123 *~ 1e+37;
+#X obj 41 38 min~;
+#X obj 41 102 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 47 173 pd <=~;
+#X obj 245 58 inlet~;
+#X connect 0 0 4 0;
+#X connect 1 0 16 1;
+#X connect 2 0 3 0;
+#X connect 2 0 1 0;
+#X connect 3 0 7 1;
+#X connect 3 0 12 0;
+#X connect 5 0 14 0;
+#X connect 6 0 15 0;
+#X connect 7 0 8 0;
+#X connect 7 0 11 0;
+#X connect 8 0 6 0;
+#X connect 8 0 6 1;
+#X connect 9 0 7 0;
+#X connect 9 0 17 0;
+#X connect 9 0 16 0;
+#X connect 11 0 5 0;
+#X connect 11 0 5 1;
+#X connect 12 0 8 1;
+#X connect 14 0 0 0;
+#X connect 15 0 0 1;
+#X connect 16 0 15 1;
+#X connect 17 0 14 1;
+#X connect 18 0 1 1;
+#X connect 18 0 3 1;
+#X connect 18 0 17 1;
+#X restore 132 129 pd polyblep;
+#N canvas 1412 395 163 124 normalize 0;
+#X obj 12 75 outlet~;
+#X obj 12 12 inlet~;
+#X obj 12 54 -~ 1;
+#X obj 12 33 *~ 2;
+#X connect 1 0 3 0;
+#X connect 2 0 0 0;
+#X connect 3 0 2 0;
+#X restore 12 129 pd normalize;
+#X obj 442 51 inlet;
+#X text 12 11 (I1) Frequency;
+#X text 12 252 (O1) Sawtooth;
+#X text 12 382 https://github.com/cfloisand/pd-externals;
+#X obj 172 185 +~;
+#X obj 157 269 outlet~;
+#N canvas 1008 608 416 294 polyblep 0;
+#X obj 167 225 -~;
+#X obj 230 127 -~;
+#X obj 230 12 sig~ 1;
+#X obj 177 74 /~;
+#X obj 167 252 outlet~;
+#X obj 12 173 *~;
+#X obj 162 173 *~;
+#X obj 12 90 *~;
+#X obj 162 147 -~;
+#X obj 47 54 inlet~;
+#X text 47 34 (I1) Phase;
+#X obj 12 147 -~ 1;
+#X obj 177 120 -~ 1;
+#X text 245 38 (I2) Normalised Frequency;
+#X obj 32 199 *~;
+#X obj 182 199 *~;
+#N canvas 1389 528 164 179 >=~ 0;
+#X obj 47 64 -~;
+#X obj 47 85 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 47 148 outlet~;
+#X obj 47 127 *~ 1e+37;
+#X obj 12 38 min~;
+#X obj 47 106 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 197 153 pd >=~;
+#N canvas 1221 655 166 185 <=~ 0;
+#X obj 41 60 -~;
+#X obj 41 81 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 41 144 outlet~;
+#X obj 41 123 *~ 1e+37;
+#X obj 41 38 min~;
+#X obj 41 102 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 47 173 pd <=~;
+#X obj 245 58 inlet~;
+#X connect 0 0 4 0;
+#X connect 1 0 16 1;
+#X connect 2 0 3 0;
+#X connect 2 0 1 0;
+#X connect 3 0 7 1;
+#X connect 3 0 12 0;
+#X connect 5 0 14 0;
+#X connect 6 0 15 0;
+#X connect 7 0 8 0;
+#X connect 7 0 11 0;
+#X connect 8 0 6 0;
+#X connect 8 0 6 1;
+#X connect 9 0 7 0;
+#X connect 9 0 17 0;
+#X connect 9 0 16 0;
+#X connect 11 0 5 0;
+#X connect 11 0 5 1;
+#X connect 12 0 8 1;
+#X connect 14 0 0 0;
+#X connect 15 0 0 1;
+#X connect 16 0 15 1;
+#X connect 17 0 14 1;
+#X connect 18 0 1 1;
+#X connect 18 0 3 1;
+#X connect 18 0 17 1;
+#X restore 172 159 pd polyblep;
+#N canvas 1412 395 163 124 normalize 0;
+#X obj 12 75 outlet~;
+#X obj 12 12 inlet~;
+#X obj 12 54 -~ 1;
+#X obj 12 33 *~ 2;
+#X connect 1 0 3 0;
+#X connect 2 0 0 0;
+#X connect 3 0 2 0;
+#X restore 258 169 pd normalize;
+#X obj 258 99 +~;
+#X obj 258 125 wrap~;
+#X obj 157 206 -~;
+#X obj 157 227 +~;
+#X obj 344 83 samphold~;
+#X obj 344 44 clip~ 0 1;
+#X obj 344 211 *~ 2;
+#X obj 344 23 inlet~;
+#X text 157 289 (O2) Square;
+#X text 344 3 (I2) Pulse Width;
+#X msg 354 67 reset;
+#X text 442 31 (I3) Phase;
+#X obj 157 248 -~ 1;
+#X text 12 312 References:;
+#X connect 0 0 10 0;
+#X connect 0 0 9 0;
+#X connect 0 0 19 0;
+#X connect 0 0 23 1;
+#X connect 1 0 9 1;
+#X connect 1 0 17 1;
+#X connect 2 0 5 0;
+#X connect 2 0 21 0;
+#X connect 3 0 1 1;
+#X connect 5 0 4 0;
+#X connect 8 0 0 0;
+#X connect 8 0 1 0;
+#X connect 9 0 2 1;
+#X connect 10 0 2 0;
+#X connect 11 0 29 0;
+#X connect 11 0 0 1;
+#X connect 15 0 21 1;
+#X connect 17 0 15 0;
+#X connect 18 0 15 1;
+#X connect 19 0 20 0;
+#X connect 20 0 18 0;
+#X connect 20 0 17 0;
+#X connect 21 0 22 0;
+#X connect 22 0 31 0;
+#X connect 23 0 19 1;
+#X connect 23 0 25 0;
+#X connect 24 0 23 0;
+#X connect 25 0 22 1;
+#X connect 26 0 24 0;
+#X connect 29 0 23 0;
+#X connect 31 0 16 0;

+ 37 - 0
abs/pmVoice~.pd

@@ -0,0 +1,37 @@
+#N canvas 572 50 549 407 12;
+#X obj 12 101 inlet~;
+#X obj 12 130 phasor~;
+#X obj 30 213 cos~;
+#X obj 60 242 *~;
+#X obj 208 111 inlet~;
+#X obj 12 330 outlet~;
+#X obj 12 301 cos~;
+#X obj 30 189 *~ 12;
+#X obj 160 213 cos~;
+#X obj 160 189 *~ 21;
+#X obj 190 242 *~;
+#X obj 208 145 *~;
+#X obj 208 174 *~ 0.5;
+#X text 12 81 Inlet 1: Frequency;
+#X text 208 91 Inlet 2: Modulation index;
+#X text 236 142 <- = [pow 2];
+#X text 50 300 <- Carrier;
+#X text 220 204 <- Modulators with freq. ratio 12 & 21;
+#X text 12 350 Outlet 1: Oscillator output;
+#X text 13 11 Phase modulated voice with a single oscillator \, two modulators derived from the same oscillator with freq. ratio 12 and 21 with different modulation index curves \, see [pow 2] and [*~ 0.5].;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 7 0;
+#X connect 1 0 9 0;
+#X connect 2 0 3 0;
+#X connect 3 0 6 0;
+#X connect 4 0 3 1;
+#X connect 4 0 11 0;
+#X connect 4 0 11 1;
+#X connect 6 0 5 0;
+#X connect 7 0 2 0;
+#X connect 8 0 10 0;
+#X connect 9 0 8 0;
+#X connect 10 0 6 0;
+#X connect 11 0 12 0;
+#X connect 12 0 10 1;

+ 318 - 0
abs/pp.pitchshift~.pd

@@ -0,0 +1,318 @@
+#N canvas 88 379 992 319 10;
+#N canvas 377 145 450 300 delwrite 0;
+#X obj 59 60 inlet~;
+#X obj 61 125 outlet~;
+#X obj 60 84 delwrite~ \$0-del 1000;
+#X connect 0 0 2 0;
+#X restore 335 112 pd delwrite;
+#X obj 335 87 inlet~;
+#N canvas 211 52 680 637 delread 0;
+#X obj 173 503 *~;
+#X obj 120 514 cos~;
+#X obj 120 541 *~;
+#X obj 120 570 +~;
+#X obj 309 437 wrap~;
+#X obj 372 474 *~;
+#X obj 310 526 cos~;
+#X obj 310 553 *~;
+#X obj 309 415 +~ 0.5;
+#X obj 120 471 -~ 0.5;
+#X obj 120 491 *~ 0.5;
+#X obj 310 477 -~ 0.5;
+#X obj 310 498 *~ 0.5;
+#X obj 192 319 phasor~;
+#X obj 387 223 max 1;
+#X obj 159 251 *~ -1;
+#X obj 159 225 +~ -1;
+#X obj 160 87 inlet~;
+#X obj 120 592 outlet~;
+#X obj 387 303 sig~;
+#X obj 173 525 vd~ \$0-del;
+#X obj 373 528 vd~ \$0-del;
+#X obj 104 89 inlet~;
+#X obj 218 264 /;
+#X msg 218 243 1000 \$1;
+#X obj 159 288 *~;
+#X obj 160 140 *~ 0.01;
+#X obj 160 161 expr~ pow(2 \, $v1/12);
+#X obj 387 195 r \$0-window;
+#X connect 0 0 20 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 18 0;
+#X connect 4 0 5 0;
+#X connect 4 0 11 0;
+#X connect 5 0 21 0;
+#X connect 6 0 7 0;
+#X connect 7 0 3 1;
+#X connect 8 0 4 0;
+#X connect 9 0 10 0;
+#X connect 10 0 1 0;
+#X connect 11 0 12 0;
+#X connect 12 0 6 0;
+#X connect 13 0 0 0;
+#X connect 13 0 9 0;
+#X connect 13 0 8 0;
+#X connect 14 0 19 0;
+#X connect 14 0 24 0;
+#X connect 15 0 25 0;
+#X connect 16 0 15 0;
+#X connect 17 0 26 0;
+#X connect 19 0 0 1;
+#X connect 19 0 5 1;
+#X connect 20 0 2 1;
+#X connect 21 0 7 1;
+#X connect 23 0 25 1;
+#X connect 24 0 23 0;
+#X connect 25 0 13 0;
+#X connect 26 0 27 0;
+#X connect 27 0 16 0;
+#X connect 28 0 14 0;
+#X restore 335 193 pd delread;
+#X obj 335 215 outlet~;
+#X obj 450 92 inlet~;
+#X obj 450 128 +~;
+#X obj 103 115 hsl 105 15 -1200 1200 0 0 \$0-gui \$0-guir Transposition(cents)
+3 8 2 10 -233017 -1 -1 10400 1;
+#X obj 251 115 hsl 2 8 0 1 0 0 \$0-gui \$0-guir empty 3 8 2 10 -233017
+-228856 -1 0 1;
+#X obj 210 115 nbx 5 15 -1e+09 1e+12 0 0 \$0-transpo \$0-transpor empty
+0 -8 2 10 -228856 -1 -1 1200 256;
+#X msg 128 179 set \$1;
+#X msg 64 71 0;
+#X obj 128 158 i;
+#X obj 64 50 loadbang;
+#X obj 101 216 s \$0-transpo;
+#X msg 213 150 set \$1;
+#X obj 501 92 r \$0-transpo;
+#X obj 690 75 inlet;
+#N canvas 0 50 305 241 init 0;
+#X obj 108 54 f \$1;
+#X obj 108 31 loadbang;
+#X floatatom 109 129 0 0 0 0 - - -;
+#X obj 109 82 sel 0;
+#X text 148 129 window (msec);
+#X obj 109 161 s \$0-window;
+#X msg 109 102 50;
+#X connect 0 0 3 0;
+#X connect 1 0 0 0;
+#X connect 2 0 5 0;
+#X connect 3 0 6 0;
+#X connect 3 1 2 0;
+#X connect 6 0 2 0;
+#X restore 608 135 pd init;
+#X obj 693 289 outlet;
+#X text 823 290 philipp schmalfuß \, 2018;
+#N canvas 118 64 450 475 outlet-message 0;
+#X obj 100 25 r \$0-window;
+#X obj 124 120 pack f f;
+#X obj 165 57 t b f;
+#X obj 123 81 del 0;
+#X msg 157 173 transposition \$2 \, window \$1;
+#X obj 164 291 list trim;
+#X msg 84 289 addcomma;
+#X msg 43 299 set;
+#X obj 164 268 list prepend add2;
+#X obj 164 376 outlet;
+#X obj 180 24 r \$0-transpo;
+#X obj 100 47 t b f;
+#X obj 123 100 f;
+#X obj 124 141 t b a b;
+#X obj 145 197 t b a a;
+#N canvas 497 319 297 264 save 0;
+#X obj 48 16 inlet;
+#N canvas 690 259 481 384 collect 0;
+#X obj 47 60 inlet;
+#X obj 47 274 outlet;
+#X obj 98 180 list;
+#X obj 166 181 t l;
+#X obj 47 225 list;
+#X obj 98 139 list append |;
+#X obj 47 126 del 0;
+#X obj 47 82 t b a;
+#X text 119 75 hacky thing... replaycing " \, " with "|";
+#X connect 0 0 7 0;
+#X connect 2 0 3 0;
+#X connect 2 0 4 1;
+#X connect 3 0 2 1;
+#X connect 4 0 1 0;
+#X connect 5 0 2 0;
+#X connect 6 0 2 1;
+#X connect 6 0 4 0;
+#X connect 7 0 6 0;
+#X connect 7 1 5 0;
+#X restore 48 38 pd collect;
+#X obj 117 16 r \$0-save;
+#X obj 27 130 text set \$0-savestates;
+#X obj 27 104 list;
+#X obj 117 62 t b f;
+#X obj 117 39 clip 0 20;
+#X connect 0 0 1 0;
+#X connect 1 0 4 1;
+#X connect 2 0 6 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 5 1 3 1;
+#X connect 6 0 5 0;
+#X restore 184 223 pd save;
+#X connect 0 0 11 0;
+#X connect 1 0 13 0;
+#X connect 2 0 3 0;
+#X connect 2 1 1 1;
+#X connect 3 0 12 0;
+#X connect 4 0 14 0;
+#X connect 5 0 9 0;
+#X connect 6 0 9 0;
+#X connect 7 0 9 0;
+#X connect 8 0 5 0;
+#X connect 10 0 2 0;
+#X connect 11 0 3 0;
+#X connect 11 1 12 1;
+#X connect 12 0 1 0;
+#X connect 13 0 9 0;
+#X connect 13 1 4 0;
+#X connect 13 2 7 0;
+#X connect 14 0 6 0;
+#X connect 14 1 8 0;
+#X connect 14 2 15 0;
+#X restore 693 247 pd outlet-message;
+#N canvas 728 569 200 197 in 0;
+#X obj 20 20 inlet;
+#X obj 21 121 route window transposition;
+#X obj 21 148 s \$0-window;
+#X obj 97 168 s \$0-transpor;
+#N canvas 698 546 200 251 route 0;
+#X obj 20 20 inlet;
+#X obj 30 60 route save recall;
+#X obj 30 85 route float;
+#X obj 97 111 route float;
+#X obj 30 136 s \$0-save;
+#X obj 30 108 i;
+#X obj 98 133 i;
+#X obj 98 161 s \$0-recall;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 2 0 5 0;
+#X connect 3 0 6 0;
+#X connect 5 0 4 0;
+#X connect 6 0 7 0;
+#X restore 51 63 pd route save-recall;
+#N canvas 362 125 450 479 recall 0;
+#X obj 49 145 outlet;
+#N canvas 3 54 450 600 listsplit 0;
+#X obj 158 23 inlet;
+#X obj 220 87 list length;
+#X obj 220 113 until;
+#X obj 182 150 f;
+#X obj 278 150 + 1;
+#X msg 265 111 0;
+#X obj 182 226 list store;
+#X msg 182 202 get \$1 1;
+#X obj 154 367 list split;
+#X obj 222 342 f;
+#X obj 154 334 list;
+#X obj 98 124 list;
+#X obj 182 389 list split 1;
+#X obj 154 274 t bang bang bang;
+#X obj 182 179 t f f;
+#X obj 158 48 t l l l b;
+#X obj 154 473 outlet;
+#X obj 154 440 list trim;
+#X obj 163 248 sel |;
+#X text 275 197 hacky split list at "|";
+#X connect 0 0 15 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 3 0 14 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 1;
+#X connect 6 0 18 0;
+#X connect 7 0 6 0;
+#X connect 8 0 17 0;
+#X connect 8 1 12 0;
+#X connect 9 0 8 1;
+#X connect 10 0 8 0;
+#X connect 11 0 15 0;
+#X connect 12 1 11 0;
+#X connect 13 0 10 0;
+#X connect 13 1 9 0;
+#X connect 13 2 2 1;
+#X connect 14 0 7 0;
+#X connect 14 1 9 1;
+#X connect 15 0 1 0;
+#X connect 15 1 10 1;
+#X connect 15 2 6 1;
+#X connect 15 3 5 0;
+#X connect 17 0 16 0;
+#X connect 18 0 13 0;
+#X restore 49 117 pd listsplit;
+#X obj 49 24 r \$0-recall;
+#X obj 49 54 pipe 1;
+#X obj 221 409 text fromlist \$0-savestates;
+#X obj 49 77 text get \$0-savestates;
+#X msg 253 246 21;
+#X obj 253 269 until;
+#X obj 253 292 f;
+#X obj 300 295 + 1;
+#X obj 253 315 t b f;
+#X obj 253 367 text set \$0-savestates;
+#X obj 221 114 text tolist \$0-savestates;
+#X msg 253 342 list empty_slot;
+#X obj 221 160 t a b;
+#X obj 151 166 loadbang;
+#X obj 221 137 savestate;
+#X obj 221 33 text define \$0-savestates;
+#X obj 151 189 del 0;
+#X msg 298 199 0;
+#X obj 253 220 spigot 1;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 3 0 5 0;
+#X connect 5 0 1 0;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 8 0 10 0;
+#X connect 9 0 8 1;
+#X connect 10 0 13 0;
+#X connect 10 1 11 1;
+#X connect 12 0 16 0;
+#X connect 13 0 11 0;
+#X connect 14 0 4 0;
+#X connect 14 1 19 0;
+#X connect 15 0 18 0;
+#X connect 16 0 14 0;
+#X connect 16 1 12 0;
+#X connect 18 0 20 0;
+#X connect 19 0 20 1;
+#X connect 20 0 6 0;
+#X restore 108 85 pd recall;
+#X connect 0 0 1 0;
+#X connect 0 0 4 0;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 5 0 1 0;
+#X restore 690 104 pd in;
+#X obj 194 59 loadbang;
+#X msg 194 80 1200;
+#X connect 0 0 2 0;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 4 0 5 0;
+#X connect 5 0 2 1;
+#X connect 6 0 11 0;
+#X connect 8 0 14 0;
+#X connect 9 0 8 0;
+#X connect 10 0 6 0;
+#X connect 11 0 9 0;
+#X connect 11 0 13 0;
+#X connect 12 0 10 0;
+#X connect 14 0 6 0;
+#X connect 15 0 5 1;
+#X connect 16 0 21 0;
+#X connect 20 0 18 0;
+#X connect 22 0 23 0;
+#X connect 23 0 6 0;
+#X coords 0 -1 1 1 155 33 1 100 100;

+ 552 - 0
abs/re.plate~.pd

@@ -0,0 +1,552 @@
+#N canvas 572 50 1115 784 10;
+#X obj 12 31 inlet~;
+#X obj 12 136 rpole~;
+#X obj 12 73 *~;
+#X obj 12 393 rpole~;
+#X obj 12 372 *~;
+#X obj 32 454 loadbang;
+#X obj 202 393 rpole~;
+#X obj 202 372 *~;
+#X obj 217 204 *~;
+#X obj 27 225 *~;
+#X obj 202 288 +~;
+#X obj 12 288 +~;
+#X obj 202 564 *~;
+#X obj 369 57 clip~ 0 1;
+#X obj 139 57 clip~ 0 1;
+#X obj 12 330 delwrite~ \$0-dela 200;
+#X obj 12 351 delread~ \$0-dela 141.69;
+#X obj 202 330 delwrite~ \$0-deld 200;
+#X obj 202 351 delread~ \$0-deld 149.62;
+#X obj 27 183 delread~ \$0-delf 125;
+#X obj 509 205 delread~ \$0-delc 106.28;
+#X obj 202 585 delwrite~ \$0-delf 200;
+#X obj 349 314 loadbang;
+#X msg 349 335 1;
+#X obj 349 356 -~;
+#X obj 139 36 inlet~;
+#X obj 124 78 loadbang;
+#X msg 124 99 1;
+#X obj 124 120 -~;
+#X obj 369 36 inlet~;
+#X msg 37 267 30.51 0.1 0.7;
+#N canvas 1047 506 295 300 modallpass 0;
+#X obj 12 31 inlet~;
+#X obj 12 170 +~;
+#X obj 27 148 *~;
+#X obj 87 31 inlet;
+#X obj 202 132 inlet;
+#X obj 202 158 * -1;
+#X obj 187 186 *~;
+#X obj 172 207 +~;
+#X obj 172 228 outlet~;
+#X obj 157 52 osc~;
+#X obj 87 90 +~;
+#X obj 157 74 *~ 4;
+#X obj 157 31 inlet;
+#X text 87 11 (I2) Time;
+#X text 157 11 (I3) Freq;
+#X text 202 112 (I4) Gain;
+#X text 12 11 (I1) Input;
+#X text 172 248 (O1) Output;
+#X obj 87 112 vd~ \$0-mod-ap-1;
+#X obj 12 228 delwrite~ \$0-mod-ap-1 50;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 19 0;
+#X connect 2 0 1 1;
+#X connect 3 0 10 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 9 0 11 0;
+#X connect 10 0 18 0;
+#X connect 11 0 10 1;
+#X connect 12 0 9 0;
+#X connect 18 0 2 0;
+#X connect 18 0 7 0;
+#X restore 12 309 pd modallpass;
+#X obj 37 288 unpack f f f;
+#X obj 37 246 loadbang;
+#X text 12 11 (I1) Input;
+#X text 139 16 (I2) Bandwidth;
+#N canvas 505 611 561 213 allpass2tap 0;
+#X obj 12 52 inlet~;
+#X obj 12 110 +~;
+#X obj 27 88 *~;
+#X obj 82 31 inlet;
+#X obj 212 72 inlet;
+#X obj 212 93 * -1;
+#X obj 197 126 *~;
+#X obj 182 147 +~;
+#X obj 182 168 outlet~;
+#X text 12 32 (I1) Input;
+#X text 82 11 (I2) Time;
+#X text 212 52 (I3) Gain;
+#X obj 272 168 outlet~;
+#X obj 272 126 inlet;
+#X text 272 106 (I4) Tap Time 1;
+#X obj 402 168 outlet~;
+#X obj 402 126 inlet;
+#X obj 12 168 delwrite~ \$0-ap2tap-1 100;
+#X obj 82 52 delread~ \$0-ap2tap-1;
+#X text 402 106 (I5) Tap Time 2;
+#X text 182 188 (O1) AP Out;
+#X obj 272 147 delread~ \$0-ap2tap-1;
+#X obj 402 147 delread~ \$0-ap2tap-1;
+#X text 272 188 (O2) Tap 1 Out;
+#X text 402 188 (O3) Tap 2 Out;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 17 0;
+#X connect 2 0 1 1;
+#X connect 3 0 18 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 13 0 21 0;
+#X connect 16 0 22 0;
+#X connect 18 0 2 0;
+#X connect 18 0 7 0;
+#X connect 21 0 12 0;
+#X connect 22 0 15 0;
+#X restore 12 517 pd allpass2tap;
+#X msg 32 475 89.24 0.5 64.2 11.2;
+#X obj 32 496 unpack f f f f;
+#N canvas 763 302 214 344 allpasschain 0;
+#N canvas 845 584 289 213 allpass 0;
+#X obj 12 52 inlet~;
+#X obj 12 110 +~;
+#X obj 27 88 *~;
+#X obj 92 31 inlet;
+#X obj 202 72 inlet;
+#X obj 202 93 * -1;
+#X obj 187 126 *~;
+#X obj 172 147 +~;
+#X obj 172 168 outlet~;
+#X obj 92 52 delread~ \$0-ap-1;
+#X text 12 32 (I1) Input;
+#X text 92 11 (I2) Time;
+#X text 202 52 (I3) Gain;
+#X obj 12 168 delwrite~ \$0-ap-1 20;
+#X text 172 188 (O1) Output;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 13 0;
+#X connect 2 0 1 1;
+#X connect 3 0 9 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 9 0 2 0;
+#X connect 9 0 7 0;
+#X restore 12 75 pd allpass;
+#X msg 40 33 4.771 0.75;
+#X obj 40 54 unpack f f;
+#N canvas 845 584 289 213 allpass 0;
+#X obj 12 52 inlet~;
+#X obj 12 110 +~;
+#X obj 27 88 *~;
+#X obj 92 31 inlet;
+#X obj 202 72 inlet;
+#X obj 202 93 * -1;
+#X obj 187 126 *~;
+#X obj 172 147 +~;
+#X obj 172 168 outlet~;
+#X text 12 32 (I1) Input;
+#X text 92 11 (I2) Time;
+#X text 202 52 (I3) Gain;
+#X obj 12 168 delwrite~ \$0-ap-2 20;
+#X obj 92 52 delread~ \$0-ap-2;
+#X text 172 188 (O1) Output;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 12 0;
+#X connect 2 0 1 1;
+#X connect 3 0 13 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 13 0 2 0;
+#X connect 13 0 7 0;
+#X restore 12 138 pd allpass;
+#X obj 40 117 unpack f f;
+#N canvas 845 584 289 213 allpass 0;
+#X obj 12 52 inlet~;
+#X obj 12 110 +~;
+#X obj 27 88 *~;
+#X obj 92 31 inlet;
+#X obj 202 72 inlet;
+#X obj 202 93 * -1;
+#X obj 187 126 *~;
+#X obj 172 147 +~;
+#X obj 172 168 outlet~;
+#X text 12 32 (I1) Input;
+#X text 92 11 (I2) Time;
+#X text 202 52 (I3) Gain;
+#X obj 92 52 delread~ \$0-ap-4;
+#X obj 12 168 delwrite~ \$0-ap-4 20;
+#X text 172 188 (O1) Output;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 13 0;
+#X connect 2 0 1 1;
+#X connect 3 0 12 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 12 0 2 0;
+#X connect 12 0 7 0;
+#X restore 12 201 pd allpass;
+#X obj 40 180 unpack f f;
+#N canvas 845 584 289 213 allpass 0;
+#X obj 12 52 inlet~;
+#X obj 12 110 +~;
+#X obj 27 88 *~;
+#X obj 92 31 inlet;
+#X obj 202 72 inlet;
+#X obj 202 93 * -1;
+#X obj 187 126 *~;
+#X obj 172 147 +~;
+#X obj 172 168 outlet~;
+#X text 12 32 (I1) Input;
+#X text 92 11 (I2) Time;
+#X text 202 52 (I3) Gain;
+#X obj 92 52 delread~ \$0-ap-5;
+#X obj 12 168 delwrite~ \$0-ap-5 20;
+#X text 172 188 (O1) Output;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 13 0;
+#X connect 2 0 1 1;
+#X connect 3 0 12 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 12 0 2 0;
+#X connect 12 0 7 0;
+#X restore 12 264 pd allpass;
+#X obj 40 243 unpack f f;
+#X msg 40 96 3.595 0.75;
+#X msg 40 222 9.307 0.625;
+#X msg 40 159 12.73 0.625;
+#X obj 12 12 inlet~;
+#X obj 12 285 outlet~;
+#X obj 120 17 loadbang;
+#X obj 120 80 loadbang;
+#X obj 120 143 loadbang;
+#X obj 120 206 loadbang;
+#X connect 0 0 3 0;
+#X connect 1 0 2 0;
+#X connect 2 0 0 1;
+#X connect 2 1 0 2;
+#X connect 3 0 5 0;
+#X connect 4 0 3 1;
+#X connect 4 1 3 2;
+#X connect 5 0 7 0;
+#X connect 6 0 5 1;
+#X connect 6 1 5 2;
+#X connect 7 0 13 0;
+#X connect 8 0 7 1;
+#X connect 8 1 7 2;
+#X connect 9 0 4 0;
+#X connect 10 0 8 0;
+#X connect 11 0 6 0;
+#X connect 12 0 0 0;
+#X connect 14 0 1 0;
+#X connect 15 0 9 0;
+#X connect 16 0 11 0;
+#X connect 17 0 10 0;
+#X restore 12 157 pd allpasschain;
+#N canvas 1047 506 295 300 modallpass 0;
+#X obj 12 31 inlet~;
+#X obj 12 170 +~;
+#X obj 27 148 *~;
+#X obj 87 31 inlet;
+#X obj 202 132 inlet;
+#X obj 202 158 * -1;
+#X obj 187 186 *~;
+#X obj 172 207 +~;
+#X obj 172 228 outlet~;
+#X obj 157 52 osc~;
+#X obj 87 90 +~;
+#X obj 157 74 *~ 4;
+#X obj 157 31 inlet;
+#X text 87 11 (I2) Time;
+#X text 157 11 (I3) Freq;
+#X text 202 112 (I4) Gain;
+#X text 12 11 (I1) Input;
+#X text 172 248 (O1) Output;
+#X obj 12 228 delwrite~ \$0-mod-ap-2 50;
+#X obj 87 112 vd~ \$0-mod-ap-2;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 18 0;
+#X connect 2 0 1 1;
+#X connect 3 0 10 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 9 0 11 0;
+#X connect 10 0 19 0;
+#X connect 11 0 10 1;
+#X connect 12 0 9 0;
+#X connect 19 0 2 0;
+#X connect 19 0 7 0;
+#X restore 202 309 pd modallpass;
+#X obj 227 288 unpack f f f;
+#X obj 227 246 loadbang;
+#X msg 227 267 22.58 0.07 0.7;
+#X obj 222 454 loadbang;
+#N canvas 505 611 561 213 allpass2tap 0;
+#X obj 12 52 inlet~;
+#X obj 12 110 +~;
+#X obj 27 88 *~;
+#X obj 82 31 inlet;
+#X obj 212 72 inlet;
+#X obj 212 93 * -1;
+#X obj 197 126 *~;
+#X obj 182 147 +~;
+#X obj 182 168 outlet~;
+#X text 12 32 (I1) Input;
+#X text 82 11 (I2) Time;
+#X text 212 52 (I3) Gain;
+#X obj 272 168 outlet~;
+#X obj 272 126 inlet;
+#X text 272 106 (I4) Tap Time 1;
+#X obj 402 168 outlet~;
+#X obj 402 126 inlet;
+#X text 402 106 (I5) Tap Time 2;
+#X text 182 188 (O1) AP Out;
+#X obj 82 52 delread~ \$0-ap2tap-2;
+#X obj 12 168 delwrite~ \$0-ap2tap-2 100;
+#X obj 272 147 delread~ \$0-ap2tap-2;
+#X obj 402 147 delread~ \$0-ap2tap-2;
+#X text 272 188 (O2) Tap 1 Out;
+#X text 402 188 (O3) Tap 2 Out;
+#X connect 0 0 1 0;
+#X connect 1 0 6 0;
+#X connect 1 0 20 0;
+#X connect 2 0 1 1;
+#X connect 3 0 19 0;
+#X connect 4 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 1;
+#X connect 7 0 8 0;
+#X connect 13 0 21 0;
+#X connect 16 0 22 0;
+#X connect 19 0 2 0;
+#X connect 19 0 7 0;
+#X connect 21 0 12 0;
+#X connect 22 0 15 0;
+#X restore 202 517 pd allpass2tap;
+#X obj 222 496 unpack f f f f;
+#X msg 222 475 60.48 0.5 6.3 41.2;
+#N canvas 351 137 392 227 tanh~ 0;
+#X obj 12 12 inlet~;
+#X obj 12 38 clip~ -3 3;
+#X obj 27 64 *~;
+#X obj 12 192 outlet~;
+#X obj 27 140 /~;
+#X obj 12 166 *~;
+#X obj 67 90 *~ 9;
+#X text 92 42 // http://www.musicdsp.org/showone.php?id=238;
+#X text 92 62 // y = x * (27 + x^2) / (27 + 9*x^2);
+#X obj 27 90 +~ 27;
+#X obj 67 116 +~ 27;
+#X text 92 22 // pade-approximation of tanh function;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 1 0 2 1;
+#X connect 1 0 5 0;
+#X connect 2 0 9 0;
+#X connect 2 0 6 0;
+#X connect 4 0 5 1;
+#X connect 5 0 3 0;
+#X connect 6 0 10 0;
+#X connect 9 0 4 0;
+#X connect 10 0 4 1;
+#X restore 217 225 pd tanh~;
+#X obj 369 78 s~ \$0-gain;
+#X obj 217 543 r~ \$0-gain;
+#X obj 12 564 *~;
+#X obj 27 543 r~ \$0-gain;
+#X obj 12 585 delwrite~ \$0-delc 200;
+#X obj 232 183 r~ \$0-gain;
+#X obj 42 204 r~ \$0-gain;
+#X obj 259 57 clip~ 0 1;
+#X obj 259 36 inlet~;
+#X obj 259 78 s~ \$0-damping;
+#X obj 384 377 r~ \$0-damping;
+#X text 259 16 (I3) Damping;
+#X obj 12 52 /~ 2;
+#N canvas 0 22 493 300 multitapdelay 0;
+#X obj 9 102 +~;
+#X obj 29 123 -~;
+#X obj 49 144 +~;
+#X obj 69 165 -~;
+#X obj 89 186 -~;
+#X obj 109 207 -~;
+#X obj 9 60 delread~ \$0-dela 8.9;
+#X obj 24 81 delread~ \$0-dela 99.8;
+#X obj 64 123 delread~ \$0-delc 67;
+#X obj 84 144 delread~ \$0-deld 66.8;
+#X obj 124 186 delread~ \$0-delf 35.8;
+#X obj 44 35 inlet~;
+#X obj 104 35 inlet~;
+#X obj 229 102 +~;
+#X obj 249 123 -~;
+#X obj 269 144 +~;
+#X obj 289 165 -~;
+#X obj 309 186 -~;
+#X obj 329 207 -~;
+#X obj 264 35 inlet~;
+#X obj 324 35 inlet~;
+#X obj 229 60 delread~ \$0-deld 11.8;
+#X obj 244 81 delread~ \$0-deld 121.7;
+#X obj 284 123 delread~ \$0-delf 89.7;
+#X obj 304 144 delread~ \$0-dela 70.8;
+#X obj 344 186 delread~ \$0-delc 4.1;
+#X obj 109 228 outlet~;
+#X obj 329 228 outlet~;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 26 0;
+#X connect 6 0 0 0;
+#X connect 7 0 0 1;
+#X connect 8 0 2 1;
+#X connect 9 0 3 1;
+#X connect 10 0 5 1;
+#X connect 11 0 1 1;
+#X connect 12 0 4 1;
+#X connect 13 0 14 0;
+#X connect 14 0 15 0;
+#X connect 15 0 16 0;
+#X connect 16 0 17 0;
+#X connect 17 0 18 0;
+#X connect 18 0 27 0;
+#X connect 19 0 14 1;
+#X connect 20 0 17 1;
+#X connect 21 0 13 0;
+#X connect 22 0 13 1;
+#X connect 23 0 15 1;
+#X connect 24 0 16 1;
+#X connect 25 0 18 1;
+#X restore 112 621 pd multitapdelay;
+#X obj 112 663 outlet~;
+#X obj 205 663 outlet~;
+#X text 112 683 (O1) Left-Out;
+#X text 202 683 (O2) Right-Out;
+#X text 12 718 http://tre.ucsd.edu/wordpress/?p=625;
+#X text 12 703 Tom Erbe's port of Jon Dattorro's plate reverb;
+#X text 369 16 (I4) Gain;
+#X obj 112 642 /~ 2;
+#X obj 205 642 /~ 2;
+#X obj 598 279 pp.pitchshift~;
+#A saved empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \; empty_slot \;;
+#X obj 493 378 +~;
+#X obj 12 414 hip~ 100;
+#X obj 202 414 hip~ 100;
+#X obj 493 357 *~ 0.75;
+#X obj 592 336 *~ 0.25;
+#X connect 0 0 61 0;
+#X connect 1 0 39 0;
+#X connect 2 0 1 0;
+#X connect 3 0 74 0;
+#X connect 4 0 3 0;
+#X connect 5 0 37 0;
+#X connect 6 0 75 0;
+#X connect 7 0 6 0;
+#X connect 8 0 48 0;
+#X connect 9 0 11 1;
+#X connect 10 0 40 0;
+#X connect 11 0 31 0;
+#X connect 12 0 21 0;
+#X connect 13 0 49 0;
+#X connect 14 0 2 1;
+#X connect 14 0 28 1;
+#X connect 16 0 4 0;
+#X connect 18 0 7 0;
+#X connect 19 0 9 0;
+#X connect 20 0 72 0;
+#X connect 20 0 76 0;
+#X connect 22 0 23 0;
+#X connect 23 0 24 0;
+#X connect 24 0 7 1;
+#X connect 24 0 4 1;
+#X connect 25 0 14 0;
+#X connect 26 0 27 0;
+#X connect 27 0 28 0;
+#X connect 28 0 1 1;
+#X connect 29 0 13 0;
+#X connect 30 0 32 0;
+#X connect 31 0 15 0;
+#X connect 32 0 31 1;
+#X connect 32 1 31 2;
+#X connect 32 2 31 3;
+#X connect 33 0 30 0;
+#X connect 36 0 51 0;
+#X connect 36 1 62 0;
+#X connect 36 2 62 2;
+#X connect 37 0 38 0;
+#X connect 38 0 36 1;
+#X connect 38 1 36 2;
+#X connect 38 2 36 3;
+#X connect 38 3 36 4;
+#X connect 39 0 11 0;
+#X connect 39 0 10 0;
+#X connect 40 0 17 0;
+#X connect 41 0 40 1;
+#X connect 41 1 40 2;
+#X connect 41 2 40 3;
+#X connect 42 0 43 0;
+#X connect 43 0 41 0;
+#X connect 44 0 47 0;
+#X connect 45 0 12 0;
+#X connect 45 1 62 1;
+#X connect 45 2 62 3;
+#X connect 46 0 45 1;
+#X connect 46 1 45 2;
+#X connect 46 2 45 3;
+#X connect 46 3 45 4;
+#X connect 47 0 46 0;
+#X connect 48 0 10 1;
+#X connect 50 0 12 1;
+#X connect 51 0 53 0;
+#X connect 52 0 51 1;
+#X connect 54 0 8 1;
+#X connect 55 0 9 1;
+#X connect 56 0 58 0;
+#X connect 57 0 56 0;
+#X connect 59 0 6 1;
+#X connect 59 0 3 1;
+#X connect 59 0 24 1;
+#X connect 61 0 2 0;
+#X connect 62 0 70 0;
+#X connect 62 1 71 0;
+#X connect 70 0 63 0;
+#X connect 71 0 64 0;
+#X connect 72 0 77 0;
+#X connect 73 0 8 0;
+#X connect 74 0 36 0;
+#X connect 75 0 45 0;
+#X connect 76 0 73 0;
+#X connect 77 0 73 1;

+ 445 - 0
abs/resonant~.pd

@@ -0,0 +1,445 @@
+#N canvas 1193 322 270 150 10;
+#X obj 46 120 outlet~;
+#N canvas 776 547 365 190 @hv_obj 0;
+#X obj 12 31 inlet~;
+#N canvas 1097 522 303 331 zeros 0;
+#X obj 12 217 czero~;
+#X obj 12 273 czero~;
+#X obj 12 299 outlet~;
+#X obj 75 299 outlet~;
+#X obj 12 31 inlet~;
+#X obj 47 122 *~ -1;
+#X obj 47 143 *~ 0.5;
+#X obj 132 58 *~;
+#X obj 132 92 -~;
+#X obj 187 78 *~ 4;
+#X obj 187 57 *~;
+#X obj 132 113 abs~;
+#X obj 132 155 *~ 0.5;
+#X obj 132 176 /~;
+#N canvas 773 235 262 212 location 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 207 12 inlet~;
+#X obj 12 174 outlet~;
+#X obj 72 174 outlet~;
+#X obj 132 174 outlet~;
+#X obj 192 174 outlet~;
+#N canvas 725 189 180 137 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 758 270 144 76 @hv_obj 0;
+#X obj 62 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 945 362 136 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 62 49 pd gte;
+#N canvas 845 375 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 140 82 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 39 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 137 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 49 pd lte;
+#X obj 12 152 +~;
+#X obj 160 22 sig~ 0;
+#X obj 147 125 *~;
+#X obj 192 125 *~;
+#X obj 132 152 -~;
+#X obj 192 152 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 190 pd location;
+#X obj 132 134 sqrt~;
+#X obj 47 164 /~;
+#X obj 252 203 inlet;
+#X text 62 11 b0;
+#X text 132 11 b1;
+#X text 202 11 b2;
+#X obj 202 31 inlet~;
+#X obj 132 31 inlet~;
+#X obj 62 31 inlet~;
+#X text 252 183 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X connect 4 0 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 16 0;
+#X connect 7 0 8 0;
+#X connect 8 0 11 0;
+#X connect 8 0 14 1;
+#X connect 9 0 8 1;
+#X connect 10 0 9 0;
+#X connect 11 0 15 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 2;
+#X connect 14 0 0 2;
+#X connect 14 1 0 3;
+#X connect 14 2 1 2;
+#X connect 14 3 1 3;
+#X connect 15 0 12 0;
+#X connect 16 0 14 0;
+#X connect 17 0 0 0;
+#X connect 17 0 1 0;
+#X connect 21 0 10 1;
+#X connect 22 0 5 0;
+#X connect 22 0 7 1;
+#X connect 22 0 7 0;
+#X connect 23 0 10 0;
+#X connect 23 0 13 1;
+#X connect 23 0 16 1;
+#X restore 12 89 pd zeros;
+#X obj 12 52 *~;
+#N canvas 1083 390 288 282 poles 0;
+#X obj 12 181 cpole~;
+#X obj 12 228 cpole~;
+#X obj 12 249 outlet~;
+#X obj 12 31 inlet~;
+#X obj 62 31 inlet~;
+#N canvas 739 258 279 198 location 0;
+#X obj 12 12 inlet~;
+#X obj 127 12 inlet~;
+#X obj 222 49 inlet~;
+#X obj 12 155 outlet~;
+#X obj 62 155 outlet~;
+#X obj 112 155 outlet~;
+#X obj 172 155 outlet~;
+#N canvas 796 341 183 142 gte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 679 326 140 75 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 754 439 132 184 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 3 0 6 1;
+#X connect 3 0 0 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __gte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 127 39 pd gte;
+#N canvas 816 493 187 138 lte 0;
+#X obj 117 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 100 outlet~;
+#N canvas 467 216 142 76 @hv_obj 0;
+#X obj 72 12 inlet~;
+#X obj 12 12 inlet~;
+#X obj 12 34 outlet~;
+#X connect 1 0 2 0;
+#X restore 12 78 pd @hv_obj __and~f;
+#X obj 117 56 sig~ 1;
+#N canvas 715 101 131 178 @hv_obj 0;
+#X obj 12 56 -~;
+#X obj 12 78 clip~ -1e-37 0;
+#X obj 12 12 inlet~;
+#X obj 62 12 inlet~;
+#X obj 12 144 outlet~;
+#X obj 12 122 *~ 1e+37;
+#X obj 12 34 min~;
+#X obj 12 100 +~ 1e-37;
+#X connect 0 0 1 0;
+#X connect 1 0 7 0;
+#X connect 2 0 6 0;
+#X connect 2 0 0 1;
+#X connect 3 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 0 0;
+#X connect 7 0 5 0;
+#X restore 12 34 pd @hv_obj __lte~f;
+#X connect 0 0 5 1;
+#X connect 1 0 5 0;
+#X connect 3 0 2 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X restore 172 39 pd lte;
+#X obj 12 83 +~;
+#X obj 205 12 sig~ 0;
+#X obj 127 66 *~;
+#X obj 172 66 *~;
+#X obj 112 133 -~;
+#X obj 172 133 *~ -1;
+#X connect 0 0 9 0;
+#X connect 0 0 13 0;
+#X connect 1 0 7 0;
+#X connect 1 0 8 0;
+#X connect 2 0 11 1;
+#X connect 2 0 12 1;
+#X connect 7 0 11 0;
+#X connect 8 0 12 0;
+#X connect 9 0 3 0;
+#X connect 10 0 7 1;
+#X connect 10 0 8 1;
+#X connect 11 0 9 1;
+#X connect 11 0 13 1;
+#X connect 12 0 4 0;
+#X connect 12 0 14 0;
+#X connect 13 0 5 0;
+#X connect 14 0 6 0;
+#X restore 34 155 pd location;
+#X obj 72 78 *~ 0.5;
+#X obj 122 57 *~;
+#X obj 122 78 +~;
+#X obj 182 64 *~ 4;
+#X obj 122 99 abs~;
+#X obj 122 141 *~ 0.5;
+#X obj 122 120 sqrt~;
+#X obj 232 167 inlet;
+#X text 182 11 a2;
+#X text 122 11 a1;
+#X obj 122 31 inlet~;
+#X obj 182 31 inlet~;
+#X text 232 147 clear;
+#X connect 0 0 1 0;
+#X connect 0 1 1 1;
+#X connect 1 0 2 0;
+#X connect 3 0 0 0;
+#X connect 4 0 0 1;
+#X connect 5 0 0 2;
+#X connect 5 1 0 3;
+#X connect 5 2 1 2;
+#X connect 5 3 1 3;
+#X connect 6 0 5 0;
+#X connect 7 0 8 0;
+#X connect 8 0 5 1;
+#X connect 8 0 10 0;
+#X connect 9 0 8 1;
+#X connect 10 0 12 0;
+#X connect 11 0 5 2;
+#X connect 12 0 11 0;
+#X connect 13 0 0 0;
+#X connect 13 0 1 0;
+#X connect 16 0 6 0;
+#X connect 16 0 7 0;
+#X connect 16 0 7 1;
+#X connect 17 0 9 0;
+#X restore 12 133 pd poles;
+#X obj 12 159 outlet~;
+#X obj 212 119 *~ -1;
+#X obj 262 119 *~ -1;
+#X obj 312 75 inlet;
+#X obj 62 31 inlet~;
+#X obj 112 31 inlet~;
+#X obj 162 31 inlet~;
+#X obj 212 31 inlet~;
+#X obj 262 31 inlet~;
+#X text 62 11 b0;
+#X text 112 11 b1;
+#X text 162 11 b2;
+#X text 212 11 a1;
+#X text 262 11 a2;
+#X text 312 55 clear;
+#X connect 0 0 2 0;
+#X connect 1 0 3 0;
+#X connect 1 1 3 1;
+#X connect 2 0 1 0;
+#X connect 3 0 4 0;
+#X connect 5 0 3 2;
+#X connect 6 0 3 3;
+#X connect 7 0 1 4;
+#X connect 7 0 3 4;
+#X connect 8 0 2 1;
+#X connect 8 0 1 1;
+#X connect 9 0 1 2;
+#X connect 10 0 1 3;
+#X connect 11 0 5 0;
+#X connect 12 0 6 0;
+#X restore 46 99 pd @hv_obj biquad;
+#X obj 12 31 inlet~;
+#N canvas 394 259 700 360 bandpass1.coeffs 0;
+#X obj 283 73 sig~ 1;
+#X obj 283 95 /~;
+#X obj 283 117 *~;
+#X obj 283 139 *~ 0.5;
+#X obj 12 240 sig~ 1;
+#X obj 12 262 /~;
+#X obj 122 276 *~;
+#X obj 262 276 *~;
+#X obj 347 276 *~;
+#X obj 362 210 *~ -2;
+#X obj 432 210 sig~ 1;
+#X obj 432 232 -~;
+#X obj 417 276 *~;
+#X text 363 141 w0 = 2*pi*f0*Fs;
+#X text 363 161 alpha = sin(w0)/(2*Q);
+#X text 392 51 H(z) = -----------------------------------------;
+#X text 392 11 Audio-Cookbook:;
+#X text 392 91 http://musicdsp.org/files/Audio-EQ-Cookbook.txt;
+#X text 434 66 1 + (a1/a0)*z^(-1) + (a2/a0)*z^(-2);
+#X text 434 36 (b0/a0) + (b1/a0)*z^(-1) + (b2/a0)*z^(-2);
+#X obj 192 276 sig~ 0;
+#X text 488 207 a0 = 1 + alpha;
+#X text 488 287 b1 = 0;
+#X text 488 247 a2 = 1 - alpha;
+#X text 488 227 a1 = -2*cos(w0);
+#X text 488 267 b0 = sin(w0)/2 = Q*alpha;
+#X text 488 307 b2 = -sin(w0)/2 = -Q*alpha;
+#X text 477 187 BPF: (constant skirt gain);
+#X obj 137 242 *~ 0.5;
+#X obj 277 232 *~ -0.5;
+#X obj 62 248 +~ 1;
+#X obj 298 51 max~ 0.1;
+#X obj 37 89 *~ 6.28319;
+#X obj 37 68 /~ 44100;
+#X obj 137 103 expr~ sin($v1);
+#X obj 37 196 expr~ cos($v1);
+#X obj 37 47 clip~ 20 20000;
+#X obj 130 33 loadbang;
+#X obj 130 54 samplerate~;
+#X obj 37 26 inlet~;
+#X obj 298 29 inlet~;
+#X text 122 318 b0;
+#X text 192 318 b1;
+#X text 262 318 b2;
+#X text 347 318 a1;
+#X text 417 318 a2;
+#X obj 122 298 outlet~;
+#X obj 192 298 outlet~;
+#X obj 262 298 outlet~;
+#X obj 347 298 outlet~;
+#X obj 417 298 outlet~;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 11 1;
+#X connect 3 0 30 0;
+#X connect 4 0 5 0;
+#X connect 5 0 6 0;
+#X connect 5 0 7 0;
+#X connect 5 0 8 0;
+#X connect 5 0 12 0;
+#X connect 6 0 46 0;
+#X connect 7 0 48 0;
+#X connect 8 0 49 0;
+#X connect 9 0 8 1;
+#X connect 10 0 11 0;
+#X connect 11 0 12 1;
+#X connect 12 0 50 0;
+#X connect 20 0 47 0;
+#X connect 28 0 6 1;
+#X connect 29 0 7 1;
+#X connect 30 0 5 1;
+#X connect 31 0 1 1;
+#X connect 32 0 35 0;
+#X connect 32 0 34 0;
+#X connect 33 0 32 0;
+#X connect 34 0 2 1;
+#X connect 34 0 28 0;
+#X connect 34 0 29 0;
+#X connect 35 0 9 0;
+#X connect 36 0 33 0;
+#X connect 37 0 38 0;
+#X connect 38 0 33 1;
+#X connect 39 0 36 0;
+#X connect 40 0 31 0;
+#X restore 62 53 pd bandpass1.coeffs;
+#X obj 173 31 inlet~;
+#X obj 62 31 inlet~;
+#X obj 220 64 inlet;
+#X msg 220 85 clear;
+#X text 62 11 frequency;
+#X text 173 11 q;
+#X text 220 44 clear;
+#X connect 1 0 0 0;
+#X connect 2 0 1 0;
+#X connect 3 0 1 1;
+#X connect 3 1 1 2;
+#X connect 3 2 1 3;
+#X connect 3 3 1 4;
+#X connect 3 4 1 5;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X connect 6 0 7 0;
+#X connect 7 0 1 6;

+ 19 - 0
first.pd

@@ -0,0 +1,19 @@
+#N canvas 0 0 1266 618 10;
+#X obj 1200 580 osc~ 440;
+#X obj 870 500 dac~;
+#X obj 1030 160 tgl 34 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X floatatom 1300 470 5 0 0 0 - - -, f 5;
+#X obj 1410 450 abs/os.square~;
+#X obj 1280 540 *~ 2;
+#X obj 910 390 *~;
+#X obj 900 340 adsr 1 1000 200 10 300;
+#X connect 0 0 6 1;
+#X connect 2 0 7 0;
+#X connect 3 0 4 0;
+#X connect 3 0 5 0;
+#X connect 4 0 6 1;
+#X connect 5 0 0 0;
+#X connect 6 0 1 0;
+#X connect 6 0 1 1;
+#X connect 7 0 6 0;

+ 187 - 0
kick.pd

@@ -0,0 +1,187 @@
+#N canvas 250 382 953 694 10;
+#X obj 17 415 osc~;
+#X obj 141 473 *~;
+#X obj 142 11 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X obj 18 387 line~;
+#X obj 18 84 t b b b;
+#X msg 278 217 1;
+#X msg 244 130 0;
+#X text 63 357 ramp time;
+#X text 64 176 start;
+#X text -7 286 end;
+#X obj 244 331 vline~;
+#X obj 244 83 t b b b b;
+#X obj 165 205 knob 32 32 0 500 0 0 \$0decays \$0decayr decay 0 -8
+0 8 -262144 -1 -1 0 1;
+#X obj 165 145 knob 32 32 0 3 0 0 \$0clicks \$0clickr click 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 115 145 knob 32 32 0 1000 0 0 \$0starts \$0startr start 0 -8
+0 8 -262144 -1 -1 0 1;
+#X obj 115 205 knob 32 32 15 100 0 0 \$0ends \$0endr end 0 -8 0 8 -262144
+-1 -1 0 1;
+#X obj 115 264 knob 32 32 0 500 0 0 \$0ramps \$0rampr ramp 0 -8 0 8
+-262144 -1 -1 0 1;
+#X text 114 108 pitch;
+#X text 164 107 amp;
+#X floatatom 165 453 5 0 0 0 - - -;
+#X obj 165 501 line~;
+#X msg 165 476 \$1 10;
+#X obj 142 527 *~;
+#X obj 165 264 knob 32 32 0 1 0 0 \$0levels \$0levelr level 0 -8 0
+8 -262144 -1 -1 0 1;
+#X obj 141 563 outlet~;
+#X text 180 -10 trigger in;
+#X obj 142 -13 inlet;
+#N canvas 611 445 735 578 numbercruncher 0;
+#X obj 87 10 inlet;
+#X obj 617 296 loadbang;
+#X obj 173 535 outlet;
+#X text 328 52 Sends creation argument list to the GOP;
+#X text 102 178 Receives GOP values and sends them on again to the
+saver;
+#X obj 245 225 t b f f;
+#X obj 37 226 t b f f;
+#X floatatom 297 251 5 0 0 0 - - -;
+#X floatatom 87 254 5 0 0 0 - - -;
+#X obj 87 44 unpack s f s f s f s f s f s f;
+#X obj 370 138 s \$0clickr;
+#X obj 582 138 s \$0levelr;
+#X obj 485 137 s \$0decayr;
+#X obj 36 145 s \$0startr;
+#X obj 150 141 s \$0endr;
+#X obj 246 138 s \$0rampr;
+#X obj 173 492 pack s f s f s f s f s f s f;
+#X msg 106 372 symbol start;
+#X obj 37 197 r \$0starts;
+#X obj 149 196 r \$0ends;
+#X obj 149 227 t b f f;
+#X floatatom 194 256 5 0 0 0 - - -;
+#X msg 173 400 symbol end;
+#X msg 229 423 symbol ramp;
+#X obj 245 196 r \$0ramps;
+#X obj 579 225 t b f f;
+#X obj 371 226 t b f f;
+#X floatatom 631 251 5 0 0 0 - - -;
+#X floatatom 421 254 5 0 0 0 - - -;
+#X obj 483 227 t b f f;
+#X floatatom 528 256 5 0 0 0 - - -;
+#X obj 371 197 r \$0clicks;
+#X obj 483 196 r \$0decays;
+#X obj 579 196 r \$0levels;
+#X msg 277 370 symbol click;
+#X msg 344 398 symbol decay;
+#X msg 423 434 symbol level;
+#X obj 617 321 t b b b b b b;
+#X connect 0 0 9 0;
+#X connect 1 0 37 0;
+#X connect 5 0 17 0;
+#X connect 5 1 16 5;
+#X connect 5 2 7 0;
+#X connect 6 0 17 0;
+#X connect 6 1 16 1;
+#X connect 6 2 8 0;
+#X connect 9 1 13 0;
+#X connect 9 3 14 0;
+#X connect 9 5 15 0;
+#X connect 9 7 10 0;
+#X connect 9 9 12 0;
+#X connect 9 11 11 0;
+#X connect 16 0 2 0;
+#X connect 17 0 16 0;
+#X connect 18 0 6 0;
+#X connect 19 0 20 0;
+#X connect 20 0 17 0;
+#X connect 20 1 16 3;
+#X connect 20 2 21 0;
+#X connect 22 0 16 2;
+#X connect 23 0 16 4;
+#X connect 24 0 5 0;
+#X connect 25 0 17 0;
+#X connect 25 1 16 11;
+#X connect 25 2 27 0;
+#X connect 26 0 17 0;
+#X connect 26 1 16 7;
+#X connect 26 2 28 0;
+#X connect 29 0 17 0;
+#X connect 29 1 16 9;
+#X connect 29 2 30 0;
+#X connect 31 0 26 0;
+#X connect 32 0 29 0;
+#X connect 33 0 25 0;
+#X connect 34 0 16 6;
+#X connect 35 0 16 8;
+#X connect 36 0 16 10;
+#X connect 37 0 17 0;
+#X connect 37 1 22 0;
+#X connect 37 2 23 0;
+#X connect 37 3 34 0;
+#X connect 37 4 35 0;
+#X connect 37 5 36 0;
+#X restore 371 86 pd numbercruncher;
+#X obj 344 -61 loadbang;
+#X obj 371 55 list trim;
+#X obj 371 32 list;
+#X obj 344 -17 t b b;
+#X msg 344 6 1;
+#X obj 371 112 spigot;
+#X text 412 105 This spigot is necessary because if one [canvasargs]
+object feeds the creation argument straight into another it will cause
+PD to crash.;
+#X obj 371 7 iemguts/canvasargs;
+#X obj 371 157 iemguts/canvasargs;
+#X text 314 277 load time1 \; execute jump1 at time1 \; load time2
+\; execute jump2 at time2;
+#X text 295 166 time2;
+#X text 304 215 jump1;
+#X text 268 129 jump2;
+#X text 329 250 time1;
+#X text 441 -54 state-save: thanks to LiamG!;
+#X obj 261 168 f;
+#X obj 295 249 f;
+#X obj 45 335 f;
+#X obj 18 289 f;
+#X obj 57 195 f;
+#X text 138 303 kick~;
+#X connect 0 0 1 0;
+#X connect 1 0 22 0;
+#X connect 2 0 4 0;
+#X connect 2 0 11 0;
+#X connect 3 0 0 0;
+#X connect 4 0 46 0;
+#X connect 4 1 45 0;
+#X connect 4 2 47 0;
+#X connect 5 0 10 0;
+#X connect 6 0 10 0;
+#X connect 10 0 1 1;
+#X connect 11 0 6 0;
+#X connect 11 1 43 0;
+#X connect 11 2 5 0;
+#X connect 11 3 44 0;
+#X connect 12 0 43 1;
+#X connect 13 0 44 1;
+#X connect 14 0 47 1;
+#X connect 15 0 46 1;
+#X connect 16 0 45 1;
+#X connect 19 0 21 0;
+#X connect 20 0 22 1;
+#X connect 21 0 20 0;
+#X connect 22 0 24 0;
+#X connect 23 0 19 0;
+#X connect 26 0 2 0;
+#X connect 27 0 33 0;
+#X connect 28 0 31 0;
+#X connect 29 0 27 0;
+#X connect 30 0 29 0;
+#X connect 31 0 32 0;
+#X connect 31 1 35 0;
+#X connect 32 0 33 1;
+#X connect 33 0 36 0;
+#X connect 35 0 30 0;
+#X connect 43 0 10 1;
+#X connect 43 0 10 2;
+#X connect 44 0 10 1;
+#X connect 45 0 3 1;
+#X connect 46 0 3 0;
+#X connect 47 0 3 0;
+#X coords 0 -1 1 1 110 220 2 100 100;

+ 220 - 0
seq_voices.pd

@@ -0,0 +1,220 @@
+#N canvas -8 -8 1282 634 10;
+#X obj 400 130 receive I;
+#X obj 400 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 400 220 spigot;
+#X obj 400 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1130 450 s voice01;
+#X obj 430 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 1 1;
+#X obj 512 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 512 222 spigot;
+#X obj 512 264 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 542 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 512 132 receive II;
+#X obj 620 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 620 220 spigot;
+#X obj 620 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 650 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 732 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 732 222 spigot;
+#X obj 730 270 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 762 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 620 130 receive III;
+#X obj 732 132 receive IV;
+#X obj 840 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 840 220 spigot;
+#X obj 840 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 870 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 1 1;
+#X obj 952 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 952 222 spigot;
+#X obj 952 264 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 982 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 1060 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1060 220 spigot;
+#X obj 1060 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1090 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 1172 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1172 222 spigot;
+#X obj 1172 264 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1202 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 840 130 receive V;
+#X obj 952 132 receive VI;
+#X obj 1060 130 receive VII;
+#X obj 1170 130 receive VIII;
+#X obj 1290 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1290 220 spigot;
+#X obj 1290 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1320 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 1 1;
+#X obj 1402 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1402 222 spigot;
+#X obj 1402 264 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1432 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 1510 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1510 220 spigot;
+#X obj 1510 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1540 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 1622 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1622 222 spigot;
+#X obj 1622 264 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1652 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 1730 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1730 220 spigot;
+#X obj 1730 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1760 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 1 1;
+#X obj 1842 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1842 222 spigot;
+#X obj 1842 264 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1872 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 1950 180 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1950 220 spigot;
+#X obj 1950 262 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1980 160 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 2062 182 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 2062 222 spigot;
+#X obj 2062 264 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 2092 162 tgl 31 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 1290 130 receive IX;
+#X obj 1402 132 receive X;
+#X obj 1510 130 receive XI;
+#X obj 1620 130 receive XII;
+#X obj 1730 130 receive XIII;
+#X obj 1842 132 receive XIV;
+#X obj 1950 130 receive XV;
+#X obj 2060 130 receive XVI;
+#X obj 570 430 receive voice01;
+#X obj 790 510 kick start 258.065 end 50.6452 ramp 177.419 click 3
+decay 258.065 level 0.548387;
+#X obj 1270 680 dac~;
+#X obj 570 455 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 5 0 2 1;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 8 0 4 0;
+#X connect 9 0 7 1;
+#X connect 10 0 6 0;
+#X connect 11 0 12 0;
+#X connect 12 0 13 0;
+#X connect 13 0 4 0;
+#X connect 14 0 12 1;
+#X connect 15 0 16 0;
+#X connect 16 0 17 0;
+#X connect 17 0 4 0;
+#X connect 18 0 16 1;
+#X connect 19 0 11 0;
+#X connect 20 0 15 0;
+#X connect 21 0 22 0;
+#X connect 22 0 23 0;
+#X connect 23 0 4 0;
+#X connect 24 0 22 1;
+#X connect 25 0 26 0;
+#X connect 26 0 27 0;
+#X connect 27 0 4 0;
+#X connect 28 0 26 1;
+#X connect 29 0 30 0;
+#X connect 30 0 31 0;
+#X connect 31 0 4 0;
+#X connect 32 0 30 1;
+#X connect 33 0 34 0;
+#X connect 34 0 35 0;
+#X connect 35 0 4 0;
+#X connect 36 0 34 1;
+#X connect 37 0 21 0;
+#X connect 38 0 25 0;
+#X connect 39 0 29 0;
+#X connect 40 0 33 0;
+#X connect 41 0 42 0;
+#X connect 42 0 43 0;
+#X connect 43 0 4 0;
+#X connect 44 0 42 1;
+#X connect 45 0 46 0;
+#X connect 46 0 47 0;
+#X connect 47 0 4 0;
+#X connect 48 0 46 1;
+#X connect 49 0 50 0;
+#X connect 50 0 51 0;
+#X connect 51 0 4 0;
+#X connect 52 0 50 1;
+#X connect 53 0 54 0;
+#X connect 54 0 55 0;
+#X connect 55 0 4 0;
+#X connect 56 0 54 1;
+#X connect 57 0 58 0;
+#X connect 58 0 59 0;
+#X connect 59 0 4 0;
+#X connect 60 0 58 1;
+#X connect 61 0 62 0;
+#X connect 62 0 63 0;
+#X connect 63 0 4 0;
+#X connect 64 0 62 1;
+#X connect 65 0 66 0;
+#X connect 66 0 67 0;
+#X connect 67 0 4 0;
+#X connect 68 0 66 1;
+#X connect 69 0 70 0;
+#X connect 70 0 71 0;
+#X connect 71 0 4 0;
+#X connect 72 0 70 1;
+#X connect 73 0 41 0;
+#X connect 74 0 45 0;
+#X connect 75 0 49 0;
+#X connect 76 0 53 0;
+#X connect 77 0 57 0;
+#X connect 78 0 61 0;
+#X connect 79 0 65 0;
+#X connect 80 0 69 0;
+#X connect 81 0 84 0;
+#X connect 82 0 83 0;
+#X connect 82 0 83 1;
+#X connect 84 0 82 0;

+ 120 - 0
step_sequencer.pd

@@ -0,0 +1,120 @@
+#N canvas 0 0 1266 618 10;
+#X obj 620 90 loadbang;
+#X msg 620 150 375;
+#X floatatom 620 210 5 0 0 0 - - -, f 5;
+#X obj 580 250 metro;
+#X obj 560 190 tgl 26 0 empty empty empty 17 7 0 10 #fcfcfc #000000
+#000000 0 1;
+#X obj 500 250 sel 0;
+#X obj 420 250 loadbang;
+#X obj 490 290 bng 16 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 580 290 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X msg 490 340 -1;
+#X obj 580 370 int 1;
+#X obj 640 410 + 1;
+#X floatatom 580 450 5 0 0 0 - - -, f 5;
+#X obj 580 546 + 1;
+#X floatatom 580 600 5 0 0 0 - - -, f 5;
+#X obj 580 660 sel 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16, f 50;
+#X obj 580 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 610 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 640 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 670 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 700 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 730 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 760 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 790 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 820 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 850 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 880 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 910 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 940 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 970 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1000 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 1030 760 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc
+#000000 #000000;
+#X obj 480 820 s I;
+#X obj 530 820 s II;
+#X obj 580 820 s III;
+#X obj 640 820 s IV;
+#X obj 690 820 s V;
+#X obj 740 820 s VI;
+#X obj 800 820 s VII;
+#X obj 860 820 s VIII;
+#X obj 930 820 s IX;
+#X obj 990 820 s X;
+#X obj 1040 820 s XI;
+#X obj 1100 820 s XII;
+#X obj 1160 820 s XIII;
+#X obj 1230 820 s XIV;
+#X obj 1290 820 s V;
+#X obj 1340 820 s XVI;
+#X obj 580 490 % 16;
+#X text 710 150 Tempo> a tick evrey NUMEBR millisecs;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 1;
+#X connect 3 0 8 0;
+#X connect 4 0 3 0;
+#X connect 4 0 5 0;
+#X connect 5 0 7 0;
+#X connect 6 0 7 0;
+#X connect 7 0 9 0;
+#X connect 8 0 10 0;
+#X connect 9 0 10 0;
+#X connect 10 0 11 0;
+#X connect 10 0 12 0;
+#X connect 11 0 10 1;
+#X connect 12 0 48 0;
+#X connect 13 0 14 0;
+#X connect 14 0 15 0;
+#X connect 15 0 16 0;
+#X connect 15 1 17 0;
+#X connect 15 2 18 0;
+#X connect 15 3 19 0;
+#X connect 15 4 20 0;
+#X connect 15 5 21 0;
+#X connect 15 6 22 0;
+#X connect 15 7 23 0;
+#X connect 15 8 24 0;
+#X connect 15 9 25 0;
+#X connect 15 10 26 0;
+#X connect 15 11 27 0;
+#X connect 15 12 28 0;
+#X connect 15 13 29 0;
+#X connect 15 14 30 0;
+#X connect 15 15 31 0;
+#X connect 16 0 32 0;
+#X connect 17 0 33 0;
+#X connect 18 0 34 0;
+#X connect 19 0 35 0;
+#X connect 20 0 36 0;
+#X connect 21 0 37 0;
+#X connect 22 0 38 0;
+#X connect 23 0 39 0;
+#X connect 24 0 40 0;
+#X connect 25 0 41 0;
+#X connect 26 0 42 0;
+#X connect 27 0 43 0;
+#X connect 28 0 44 0;
+#X connect 29 0 45 0;
+#X connect 30 0 46 0;
+#X connect 31 0 47 0;
+#X connect 48 0 13 0;