aboutsummaryrefslogtreecommitdiff
path: root/nusmuk-audio/examples/analog_synth_emulation.pd
diff options
context:
space:
mode:
Diffstat (limited to 'nusmuk-audio/examples/analog_synth_emulation.pd')
-rw-r--r--nusmuk-audio/examples/analog_synth_emulation.pd230
1 files changed, 170 insertions, 60 deletions
diff --git a/nusmuk-audio/examples/analog_synth_emulation.pd b/nusmuk-audio/examples/analog_synth_emulation.pd
index 2e5d1e6..120b766 100644
--- a/nusmuk-audio/examples/analog_synth_emulation.pd
+++ b/nusmuk-audio/examples/analog_synth_emulation.pd
@@ -1,6 +1,6 @@
-#N canvas 598 507 1202 444 10;
+#N canvas 715 107 1012 561 10;
#X declare -path ..;
-#N canvas 138 332 399 586 LFO 0;
+#N canvas 136 338 399 586 LFO 0;
#X obj 29 97 phasor~;
#X obj 29 18 r LFO_freq;
#X obj 29 38 / 127;
@@ -64,7 +64,7 @@
#X connect 27 0 17 0;
#X connect 28 0 14 1;
#X restore 67 69 pd LFO;
-#N canvas 29 246 606 548 VCO 0;
+#N canvas 21 271 716 547 VCO 0;
#X obj 29 125 line~;
#X msg 29 105 \$1 20;
#X obj 30 275 mtof~;
@@ -277,6 +277,13 @@
#X obj 347 156 *~ 1;
#X obj 466 104 /~ 127;
#X obj 465 125 *~ 12;
+#X obj 553 208 *~;
+#X msg 568 163 \$1 20;
+#X obj 552 46 inlet~;
+#X obj 568 186 line~;
+#X obj 552 73 *~ 12;
+#X obj 568 119 r VCO_mod_ADSR;
+#X obj 568 142 / 127;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 4 0;
@@ -312,8 +319,15 @@
#X connect 29 0 16 0;
#X connect 30 0 31 0;
#X connect 31 0 25 0;
+#X connect 32 0 2 0;
+#X connect 33 0 35 0;
+#X connect 34 0 36 0;
+#X connect 35 0 32 1;
+#X connect 36 0 32 0;
+#X connect 37 0 38 0;
+#X connect 38 0 33 0;
#X restore 32 105 pd VCO;
-#N canvas 414 262 558 443 VCF 0;
+#N canvas 410 274 558 443 VCF 0;
#X obj -2180 173 mtof;
#X obj -2180 195 bq_coef_lop;
#N canvas 1 91 450 300 5_lines~ 0;
@@ -364,10 +378,6 @@
#X msg -2035 175 \$1 20;
#X obj -2049 65 inlet~;
#X obj -2050 131 snapshot~;
-#X obj -2003 109 metro 10;
-#X obj -2003 89 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1
-1 1;
-#X obj -2003 66 loadbang;
#X obj -2035 198 line;
#X obj -2050 220 *;
#X obj -2170 122 t b f;
@@ -375,6 +385,13 @@
#X obj -2035 153 r VCF_mod;
#X obj -2050 240 / 127;
#X obj -2050 261 * 12;
+#X obj -1925 66 inlet;
+#X obj -1883 93 r VCF_mod_ADSR;
+#X obj -1925 138 *;
+#X obj -1925 93 * 12;
+#X obj -1925 159 t b f;
+#X obj -2050 284 +;
+#X obj -1883 116 / 127;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 2 1;
@@ -388,53 +405,58 @@
#X connect 2 4 3 5;
#X connect 3 0 5 0;
#X connect 4 0 3 0;
-#X connect 6 0 20 0;
+#X connect 6 0 17 0;
#X connect 7 0 8 0;
#X connect 8 0 10 0;
#X connect 9 0 1 1;
#X connect 10 0 9 0;
-#X connect 11 0 17 0;
+#X connect 11 0 14 0;
#X connect 12 0 13 0;
-#X connect 13 0 18 0;
-#X connect 14 0 13 0;
-#X connect 15 0 14 0;
-#X connect 16 0 15 0;
-#X connect 17 0 18 1;
-#X connect 18 0 22 0;
+#X connect 13 0 15 0;
+#X connect 14 0 15 1;
+#X connect 15 0 19 0;
+#X connect 16 0 17 0;
+#X connect 16 1 17 1;
+#X connect 17 0 0 0;
+#X connect 18 0 11 0;
#X connect 19 0 20 0;
-#X connect 19 1 20 1;
-#X connect 20 0 0 0;
-#X connect 21 0 11 0;
-#X connect 22 0 23 0;
-#X connect 23 0 19 0;
+#X connect 20 0 26 0;
+#X connect 21 0 24 0;
+#X connect 22 0 27 0;
+#X connect 23 0 25 0;
+#X connect 24 0 23 0;
+#X connect 25 0 13 0;
+#X connect 25 1 26 1;
+#X connect 26 0 16 0;
+#X connect 27 0 23 1;
#X restore 32 144 pd VCF;
-#X obj 671 86 vsl 15 128 0 127 0 0 LFO_freq empty empty 0 -9 0 10 -262144
--1 -1 0 1;
-#X obj 728 85 vsl 15 128 0 127 0 0 LFO_shape set_LFO_shape empty 0
--9 0 10 -262144 -1 -1 0 1;
-#X obj 1026 90 vsl 15 128 0 127 0 0 disto empty empty 0 -9 0 10 -262144
--1 -1 0 1;
-#X obj 210 86 vsl 15 128 0 127 0 0 VCO_freq empty empty 0 -9 0 10 -262144
--1 -1 0 1;
-#X obj 329 86 vsl 15 128 0 127 0 0 VCO_mod empty empty 0 -9 0 10 -262144
--1 -1 0 1;
-#X obj 443 84 vsl 15 128 0 127 0 0 VCF_freq empty empty 0 -9 0 10 -262144
--1 -1 0 1;
-#X obj 498 86 vsl 15 128 0 127 0 0 VCF_q empty empty 0 -9 0 10 -262144
--1 -1 0 1;
-#X text 668 223 LFO freq;
-#X text 727 246 LFO shape;
+#X obj 489 368 vsl 15 128 0 127 0 1 LFO_freq empty empty 0 -9 0 10
+-262144 -1 -1 9000 1;
+#X obj 546 367 vsl 15 128 0 127 0 1 LFO_shape set_LFO_shape empty 0
+-9 0 10 -262144 -1 -1 6350 1;
+#X obj 843 375 vsl 15 128 0 127 0 1 disto empty empty 0 -9 0 10 -262144
+-1 -1 3400 1;
+#X obj 210 86 vsl 15 128 0 127 0 1 VCO_freq empty empty 0 -9 0 10 -262144
+-1 -1 6800 1;
+#X obj 329 86 vsl 15 128 0 127 0 1 VCO_mod empty empty 0 -9 0 10 -262144
+-1 -1 2000 1;
+#X obj 523 84 vsl 15 128 0 127 0 1 VCF_freq empty empty 0 -9 0 10 -262144
+-1 -1 6200 1;
+#X obj 578 86 vsl 15 128 0 127 0 1 VCF_q empty empty 0 -9 0 10 -262144
+-1 -1 8700 1;
+#X text 486 505 LFO freq;
+#X text 532 528 LFO shape;
#X text 328 219 Mod LFO;
-#X text 442 222 VCF freq;
-#X obj 548 84 vsl 15 128 0 127 0 0 VCF_mod empty empty 0 -9 0 10 -262144
+#X text 522 222 VCF freq;
+#X obj 628 84 vsl 15 128 0 127 0 1 VCF_mod empty empty 0 -9 0 10 -262144
-1 -1 0 1;
-#X text 499 242 Q;
-#X obj 785 84 vsl 15 128 0 127 0 0 LFO_symetry set_LFO_symetry empty
-0 -9 0 10 -262144 -1 -1 0 1;
-#X text 1020 236 disto;
-#X obj 1060 156 vradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144
+#X text 579 242 Q;
+#X obj 603 366 vsl 15 128 0 127 0 1 LFO_symetry set_LFO_symetry empty
+0 -9 0 10 -262144 -1 -1 6350 1;
+#X text 837 521 disto;
+#X obj 877 441 vradio 15 1 0 4 empty empty empty 0 -8 0 10 -262144
-1 -1 0;
-#X text 1087 202 disto shape;
+#X text 904 487 disto shape;
#N canvas 1 143 450 300 disto1 0;
#X obj 39 47 inlet~;
#X obj 40 256 outlet~;
@@ -468,9 +490,9 @@
#X connect 14 0 1 0;
#X restore 32 124 pd disto1;
#X text 207 220 VCO freq;
-#X obj 865 110 vradio 15 1 0 7 empty empty empty 0 -8 0 10 -262144
+#X obj 683 362 vradio 15 1 0 7 empty empty empty 0 -8 0 10 -262144
-1 -1 0;
-#X obj 270 86 vsl 15 128 0 127 0 0 VCO_pwm empty empty 0 -9 0 10 -262144
+#X obj 270 86 vsl 15 128 0 127 0 1 VCO_pwm empty empty 0 -9 0 10 -262144
-1 -1 0 1;
#X obj 210 275 s VCO_tri_square;
#X obj 210 255 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
@@ -510,11 +532,10 @@
#X obj 33 182 hip~ 15;
#X obj 33 201 hip~ 15;
#X obj 33 220 hip~ 15;
-#X text 783 223 LFO symetry;
-#X obj 33 238 *~ 0.2;
-#X text 548 224 Mod LFO;
+#X text 601 505 LFO symetry;
+#X text 628 224 Mod LFO;
#X text 207 58 VCO;
-#X text 441 53 VCF;
+#X text 521 53 VCF;
#N canvas 1 179 274 272 disto_shape 0;
#X obj 21 -701 unpack f f f f;
#X obj 21 -677 s disto1_A;
@@ -542,9 +563,9 @@
#X connect 9 3 8 0;
#X connect 10 0 9 0;
#X connect 11 0 6 0;
-#X restore 1060 223 pd disto_shape;
-#X text 887 203 LFO shape preset;
-#X text 669 51 LFO;
+#X restore 877 508 pd disto_shape;
+#X text 705 485 LFO shape preset;
+#X text 487 333 LFO;
#N canvas 1 89 450 300 LFO 0;
#X obj 51 242 s set_LFO_shape;
#X obj 51 222 unpack f f;
@@ -575,19 +596,108 @@
#X connect 10 5 8 0;
#X connect 10 6 9 0;
#X connect 11 0 10 0;
-#X restore 865 227 pd LFO shape;
+#X restore 683 509 pd LFO shape;
#X obj 32 14 declare -path ..;
+#X text 704 360 sin;
+#X text 703 377 triangle;
+#X text 705 421 square;
+#X text 703 437 rectangle 1;
+#X text 704 391 saw 1;
+#X text 704 407 saw 2;
+#X text 703 452 rectangle 2;
+#X obj 389 86 vsl 15 128 0 127 0 1 VCO_mod_ADSR empty empty 0 -9 0
+10 -262144 -1 -1 0 1;
+#X text 388 219 Mod ARSR;
+#X obj 688 84 vsl 15 128 0 127 0 1 VCF_mod_ADSR empty empty 0 -9 0
+10 -262144 -1 -1 7800 1;
+#X text 688 224 Mod ADSR;
+#X obj 843 88 vsl 15 128 0 127 0 1 VCA empty empty 0 -9 0 10 -262144
+-1 -1 9300 1;
+#X text 841 57 VCA;
+#X text 845 227 Amplitude;
+#X obj 33 238 *~ 0.5;
+#N canvas 1 95 450 300 VCA 0;
+#X obj 28 259 outlet~;
+#X obj 26 23 inlet~;
+#X obj 82 48 r VCA;
+#X obj 82 71 / 127;
+#X obj 82 92 t f f;
+#X obj 82 113 *;
+#X obj 82 157 line~;
+#X obj 27 196 *~;
+#X obj 222 29 inlet~;
+#X obj 28 231 *~;
+#X obj 221 82 *~;
+#X msg 82 135 \$1 20;
+#X connect 1 0 7 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 4 1 5 1;
+#X connect 5 0 11 0;
+#X connect 6 0 7 1;
+#X connect 7 0 9 0;
+#X connect 8 0 10 1;
+#X connect 8 0 10 0;
+#X connect 9 0 0 0;
+#X connect 10 0 9 1;
+#X connect 11 0 6 0;
+#X restore 33 262 pd VCA;
+#N canvas 1 137 450 300 ADSR 0;
+#X obj 53 169 ADSR -------;
+#X obj 70 58 r ADSR_A;
+#X obj 87 78 r ADSR_D;
+#X obj 104 98 r ADSR_S;
+#X obj 122 118 r ADSR_R;
+#X obj 53 34 r on_off;
+#X msg 53 189 \$1 5;
+#X obj 53 211 line~;
+#X obj 53 236 outlet~;
+#X obj 104 137 / 127;
+#X obj 124 237 outlet;
+#X connect 0 0 6 0;
+#X connect 0 0 10 0;
+#X connect 1 0 0 1;
+#X connect 2 0 0 2;
+#X connect 3 0 9 0;
+#X connect 4 0 0 4;
+#X connect 5 0 0 0;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 9 0 0 3;
+#X restore 116 70 pd ADSR;
+#X text 202 351 ADSR;
+#X obj 42 371 tgl 50 0 on_off empty empty 17 7 0 10 -4034 -1 -1 0 1
+;
+#X text 41 428 note on / off;
+#X obj 206 376 vsl 15 128 0 127 0 1 ADSR_A empty empty 0 -9 0 10 -262144
+-1 -1 0 1;
+#X obj 269 376 vsl 15 128 0 127 0 1 ADSR_D empty empty 0 -9 0 10 -262144
+-1 -1 2400 1;
+#X obj 327 377 vsl 15 128 0 127 0 1 ADSR_S empty empty 0 -9 0 10 -262144
+-1 -1 6500 1;
+#X obj 386 377 vsl 15 128 0 127 0 1 ADSR_R empty empty 0 -9 0 10 -262144
+-1 -1 4300 1;
+#X text 204 512 Attack;
+#X text 267 532 Decay;
+#X text 326 514 Sustain;
+#X text 388 533 Release;
+#X text 40 350 Gate;
#X connect 0 0 1 0;
#X connect 0 0 2 1;
#X connect 1 0 20 0;
#X connect 2 0 27 0;
-#X connect 18 0 37 0;
+#X connect 18 0 36 0;
#X connect 20 0 2 0;
-#X connect 22 0 40 0;
+#X connect 22 0 39 0;
#X connect 25 0 24 0;
#X connect 27 0 29 0;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
-#X connect 31 0 33 0;
-#X connect 33 0 28 0;
-#X connect 33 0 28 1;
+#X connect 31 0 55 0;
+#X connect 55 0 56 0;
+#X connect 56 0 28 0;
+#X connect 56 0 28 1;
+#X connect 57 0 56 1;
+#X connect 57 0 1 1;
+#X connect 57 1 2 2;