/pdx7.adsr~.pd
http://github.com/pd-projects/pdx7 · Unknown · 426 lines · 426 code · 0 blank · 0 comment · 0 complexity · 8c5f9e47d3f92719cf39e949b9b35068 MD5 · raw file
- #N canvas 500 433 762 294 10;
- #X obj 507 8 inlet OSC;
- #N canvas 127 377 981 424 saves 0;
- #X obj 45 160 originator \$1 \$0;
- #X obj 152 132 inlet OSC;
- #X obj 47 55 r \$0-substate;
- #X obj 15 13 inlet substate;
- #X obj 15 35 route substate;
- #X obj 159 55 r \$0-copy;
- #X msg 159 76 copy;
- #X obj 243 50 r \$0-paste;
- #X msg 241 71 paste;
- #X text 154 15 This is the originator \, including some ready to use
- standard functionality.;
- #X text 507 56 Put your commun sends here \, if you like.;
- #X msg 15 91 setsub \$1;
- #X msg 249 184 svdir \$1;
- #X obj 250 139 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
- -1;
- #X obj 250 163 savepanel;
- #X obj 152 189 outlet OSC;
- #X msg 108 214 svxdir /tmp/svdir.xml;
- #X msg 78 241 ldxdir /tmp/svdir.xml;
- #X obj 538 176 s \$0-ain;
- #X obj 610 176 s \$0-din;
- #X obj 682 176 s \$0-sin;
- #X obj 776 179 s \$0-rin;
- #X obj 536 107 r \$0-a;
- #X obj 630 105 r \$0-d;
- #X obj 698 106 r \$0-s;
- #X obj 769 106 r \$0-r;
- #X obj 772 142 commun /r \$0;
- #X obj 682 142 commun /s \$0;
- #X obj 582 141 commun /d \$0;
- #X obj 496 137 commun /a \$0;
- #X connect 0 2 15 0;
- #X connect 1 0 0 1;
- #X connect 2 0 11 0;
- #X connect 3 0 4 0;
- #X connect 4 0 11 0;
- #X connect 4 1 0 0;
- #X connect 5 0 6 0;
- #X connect 6 0 0 0;
- #X connect 7 0 8 0;
- #X connect 8 0 0 0;
- #X connect 11 0 0 0;
- #X connect 12 0 0 0;
- #X connect 13 0 14 0;
- #X connect 14 0 12 0;
- #X connect 16 0 0 0;
- #X connect 17 0 0 0;
- #X connect 22 0 29 0;
- #X connect 23 0 28 0;
- #X connect 24 0 27 0;
- #X connect 25 0 26 0;
- #X connect 26 0 21 0;
- #X connect 27 0 20 0;
- #X connect 28 0 19 0;
- #X connect 29 0 18 0;
- #X restore 445 7 pd saves;
- #N canvas 569 61 450 300 cnv.ctl 0;
- #X obj 90 188 s \$0-background-cnv;
- #X floatatom 108 59 5 100 1000 0 width - -;
- #X floatatom 112 83 4 50 500 0 height - -;
- #X obj 92 132 pack 0 0;
- #X msg 92 159 vis_size \$1 \$2;
- #X obj 110 106 t b f;
- #X connect 1 0 3 0;
- #X connect 2 0 5 0;
- #X connect 3 0 4 0;
- #X connect 4 0 0 0;
- #X connect 5 0 3 0;
- #X connect 5 1 3 1;
- #X restore 524 30 pd cnv.ctl;
- #X obj 669 90 bng 15 250 50 0 \$0-copy empty copy 0 -6 0 8 -225271
- -1 -1;
- #X obj 669 118 bng 15 250 50 0 \$0-paste empty paste 0 -6 0 8 -257472
- -1 -1;
- #X obj 445 28 outlet OSC;
- #X obj 373 26 inlet;
- #X obj 373 77 outlet~;
- #N canvas 0 0 600 400 envelope 0;
- #X obj 220 203 r \$0-a;
- #X obj 252 223 r \$0-d;
- #X obj 277 247 r \$0-s;
- #X obj 333 265 r \$0-r;
- #X obj 25 119 inlet;
- #X obj 174 346 outlet~;
- #N canvas 322 82 891 795 adsr 0;
- #X text 52 50 This patch is used as an abstraction in 25.envelope.pd
- ;
- #X obj 95 108 inlet;
- #X obj 298 111 inlet;
- #X text 91 79 trigger;
- #X obj 95 138 sel 0;
- #X obj 144 138 t b;
- #X obj 104 399 pack 0 \$2;
- #X obj 362 112 inlet;
- #X obj 309 301 del \$2;
- #X obj 338 324 f \$4;
- #X obj 363 411 pack 0 \$3;
- #X obj 410 112 inlet;
- #X obj 459 111 inlet;
- #X obj 504 111 inlet;
- #X msg 95 191 stop;
- #X obj 517 360 pack 0 \$5;
- #X text 378 86 Traditional A \, D \, S \, R;
- #X text 296 88 level;
- #X text 32 302 ATTACK;
- #X obj 447 533 outlet~;
- #X text 7 325 recall level;
- #X text 7 345 and pack with;
- #X text 8 365 attack time;
- #X text 28 124 if zero;
- #X text 29 141 release;
- #X text 17 183 and cancel;
- #X text 17 199 decay;
- #X text 148 120 bang if attack;
- #X text 183 294 on attack \, set a;
- #X text 147 307 delay to go to sustain;
- #X text 189 324 recall sustain value;
- #X text 185 347 multiply by overall level;
- #X text 220 370 pack with decay time;
- #X text 510 386 on release ramp;
- #X text 511 403 back to zero;
- #X text 63 12 adsr - arguments: level \, attack time \, decay time
- \, sustain level \, release time;
- #X text 9 479 When you send this patch a nonzero trigger it schedules
- a line~ to do an attack and decay \, and if zero \, it starts the release
- ramp.;
- #X text 10 525 Objects such as f and pack can be given dollar sign
- arguments to initialize their contents from adsr's creation arguments.
- Inlets are supplied to update them on the fly.;
- #X obj 104 334 f;
- #X obj 364 346 * 1;
- #X obj 363 386 sqrt;
- #X obj 363 365 sqrt;
- #X obj 447 461 vline~;
- #X obj 446 491 *~;
- #X obj 446 511 *~;
- #X obj 104 376 sqrt;
- #X obj 104 355 sqrt;
- #X connect 1 0 4 0;
- #X connect 2 0 38 0;
- #X connect 2 0 39 1;
- #X connect 4 0 14 0;
- #X connect 4 0 15 0;
- #X connect 4 1 5 0;
- #X connect 5 0 8 0;
- #X connect 6 0 42 0;
- #X connect 7 0 6 1;
- #X connect 7 0 8 1;
- #X connect 8 0 9 0;
- #X connect 9 0 39 0;
- #X connect 10 0 42 0;
- #X connect 11 0 10 1;
- #X connect 12 0 9 1;
- #X connect 13 0 15 1;
- #X connect 14 0 8 0;
- #X connect 15 0 42 0;
- #X connect 38 0 46 0;
- #X connect 39 0 41 0;
- #X connect 40 0 10 0;
- #X connect 41 0 40 0;
- #X connect 42 0 43 0;
- #X connect 42 0 43 1;
- #X connect 43 0 44 0;
- #X connect 43 0 44 1;
- #X connect 44 0 19 0;
- #X connect 45 0 6 0;
- #X connect 46 0 45 0;
- #X restore 174 292 pd adsr -----------;
- #X obj 74 149 select 0;
- #X obj 119 175 * 1;
- #X obj 109 203 s \$0-level-in;
- #X obj 158 92 r \$0-level;
- #X obj 192 175 r \$0-level-in;
- #X obj 277 266 * 0.01;
- #X obj 156 124 * 0.01;
- #X connect 0 0 6 2;
- #X connect 1 0 6 3;
- #X connect 2 0 12 0;
- #X connect 3 0 6 5;
- #X connect 4 0 7 0;
- #X connect 4 0 6 0;
- #X connect 6 0 5 0;
- #X connect 7 1 8 0;
- #X connect 8 0 9 0;
- #X connect 10 0 13 0;
- #X connect 11 0 6 1;
- #X connect 12 0 6 4;
- #X connect 13 0 8 1;
- #X restore 373 52 pd envelope;
- #X text 625 32 Graphical ADSR;
- #X obj 668 146 nbx 2 14 -1e+37 1e+37 0 0 \$0-substate \$0-parentstate
- preset 0 -6 0 8 -195568 -1 -1 0 256;
- #X obj 31 34 nbx 5 14 0 1e+37 0 0 \$0-a \$0-ain a 10 -6 1 10 -158106
- -155649 -228225 0 256;
- #X obj 131 34 nbx 5 14 0 100 0 0 \$0-s \$0-sin s% 10 -6 1 10 -158106
- -155649 -228225 0 256;
- #X obj 81 34 nbx 5 14 0 1e+37 0 0 \$0-d \$0-din d 10 -6 1 10 -158106
- -155649 -228225 0 256;
- #X obj 181 34 nbx 5 14 0 1e+37 0 0 \$0-r \$0-rin r 10 -6 1 10 -158106
- -155649 -228225 0 256;
- #X obj 231 34 nbx 5 14 0 1e+37 0 0 \$0-level empty lvl% 10 -6 1 10
- -155649 -228225 -158106 0 256;
- #N canvas 0 0 590 606 colorize 0;
- #X obj 69 339 list prepend color;
- #X obj 69 362 list trim;
- #N canvas 281 345 447 195 rgbtopd 0;
- #X obj 35 59 expr -65536 * $i1 - 256 * $i2 - $i3 - 1 \;;
- #X obj 35 25 inlet;
- #X obj 35 89 outlet;
- #X text 26 121 -pow(2 \, 16) * R - pow(2 \, 8) * G - pow(2 \, 0) *
- B - 1;
- #X connect 0 0 2 0;
- #X connect 1 0 0 0;
- #X restore 224 152 pd rgbtopd;
- #N canvas 281 345 447 195 rgbtopd 0;
- #X obj 35 59 expr -65536 * $i1 - 256 * $i2 - $i3 - 1 \;;
- #X obj 35 25 inlet;
- #X obj 35 89 outlet;
- #X text 26 121 -pow(2 \, 16) * R - pow(2 \, 8) * G - pow(2 \, 0) *
- B - 1;
- #X connect 0 0 2 0;
- #X connect 1 0 0 0;
- #X restore 144 152 pd rgbtopd;
- #N canvas 281 345 447 195 rgbtopd 0;
- #X obj 35 59 expr -65536 * $i1 - 256 * $i2 - $i3 - 1 \;;
- #X obj 35 25 inlet;
- #X obj 35 89 outlet;
- #X text 26 121 -pow(2 \, 16) * R - pow(2 \, 8) * G - pow(2 \, 0) *
- B - 1;
- #X connect 0 0 2 0;
- #X connect 1 0 0 0;
- #X restore 69 151 pd rgbtopd;
- #N canvas 362 262 450 300 hexcolor 0;
- #X obj 152 168 * 16;
- #X obj 152 143 t f f;
- #X obj 152 201 +;
- #X obj 127 38 inlet;
- #X obj 125 61 t b a b;
- #X obj 133 252 list prepend;
- #X obj 221 255 t a;
- #X obj 99 290 list;
- #X obj 101 314 outlet;
- #N canvas 0 0 533 407 drip 0;
- #X obj 64 206 list split 1;
- #X obj 64 123 until;
- #X obj 64 181 list append;
- #X obj 194 206 bang;
- #X text 146 90 First store list \, then start the loop;
- #X text 163 118 "until" bangs its output until told to stop by a "bang"
- to its right inlet.;
- #X text 182 160 Store the remaining list.;
- #X text 239 205 third outlet of "split" tells us to stop.;
- #X obj 64 243 outlet;
- #X obj 64 57 inlet;
- #X text 237 44 From list-help.pd;
- #X obj 143 243 outlet;
- #X obj 64 86 t b a;
- #X connect 0 0 8 0;
- #X connect 0 1 2 1;
- #X connect 0 2 3 0;
- #X connect 0 2 11 0;
- #X connect 1 0 2 0;
- #X connect 2 0 0 0;
- #X connect 3 0 1 1;
- #X connect 9 0 12 0;
- #X connect 12 0 1 0;
- #X connect 12 1 2 1;
- #X restore 152 94 pd drip;
- #N canvas 360 251 450 300 hextonum 0;
- #X obj 90 96 select a b c d e f;
- #X obj 90 128 10;
- #X obj 146 131 12;
- #X obj 118 130 11;
- #X obj 178 130 13;
- #X obj 205 131 14;
- #X obj 236 130 15;
- #X obj 268 131 moses 10;
- #X obj 152 238 outlet;
- #X obj 268 162 moses 0;
- #X obj 90 37 inlet;
- #X obj 90 60 list;
- #X connect 0 0 1 0;
- #X connect 0 1 3 0;
- #X connect 0 2 2 0;
- #X connect 0 3 4 0;
- #X connect 0 4 5 0;
- #X connect 0 5 6 0;
- #X connect 0 6 7 0;
- #X connect 1 0 8 0;
- #X connect 2 0 8 0;
- #X connect 3 0 8 0;
- #X connect 4 0 8 0;
- #X connect 5 0 8 0;
- #X connect 6 0 8 0;
- #X connect 7 0 9 0;
- #X connect 9 1 8 0;
- #X connect 10 0 11 0;
- #X connect 11 0 0 0;
- #X restore 152 117 pd hextonum;
- #X connect 0 0 2 0;
- #X connect 1 0 0 0;
- #X connect 1 1 2 1;
- #X connect 2 0 5 0;
- #X connect 3 0 4 0;
- #X connect 4 0 7 0;
- #X connect 4 1 9 0;
- #X connect 4 2 5 1;
- #X connect 5 0 6 0;
- #X connect 5 0 7 1;
- #X connect 6 0 5 1;
- #X connect 7 0 8 0;
- #X connect 9 0 10 0;
- #X connect 10 0 1 0;
- #X restore 69 59 pd hexcolor;
- #X obj 69 86 list split 3;
- #X obj 144 109 list split 3;
- #N canvas 0 0 655 388 rotate2 0;
- #X obj 173 193 list prepend;
- #X obj 151 44 inlet;
- #X obj 259 115 inlet;
- #X text 311 115 how often to rotate;
- #X obj 151 220 list;
- #X text 198 43 list to rotate;
- #X obj 151 250 outlet;
- #X text 267 194 move right part of list to left.;
- #X obj 151 70 t b a b;
- #X obj 173 152 list split 2;
- #X connect 0 0 4 1;
- #X connect 1 0 8 0;
- #X connect 2 0 9 1;
- #X connect 4 0 6 0;
- #X connect 8 0 4 0;
- #X connect 8 1 9 0;
- #X connect 8 2 0 1;
- #X connect 9 0 0 0;
- #X connect 9 1 0 1;
- #X restore 356 318 pd rotate2;
- #N canvas 0 0 655 388 rotate1 0;
- #X obj 173 193 list prepend;
- #X obj 151 44 inlet;
- #X obj 259 115 inlet;
- #X text 311 115 how often to rotate;
- #X obj 151 220 list;
- #X text 198 43 list to rotate;
- #X obj 151 250 outlet;
- #X text 267 194 move right part of list to left.;
- #X obj 151 70 t b a b;
- #X obj 173 152 list split 1;
- #X connect 0 0 4 1;
- #X connect 1 0 8 0;
- #X connect 2 0 9 1;
- #X connect 4 0 6 0;
- #X connect 8 0 4 0;
- #X connect 8 1 9 0;
- #X connect 8 2 0 1;
- #X connect 9 0 0 0;
- #X connect 9 1 0 1;
- #X restore 211 320 pd rotate1;
- #X obj 69 386 outlet;
- #X obj 211 341 list prepend color;
- #X obj 211 364 list trim;
- #X obj 211 388 outlet;
- #X obj 356 343 list prepend color;
- #X obj 356 366 list trim;
- #X obj 356 390 outlet;
- #X obj 69 33 inlet;
- #X obj 69 178 pack 0 0 0;
- #X connect 0 0 1 0;
- #X connect 1 0 10 0;
- #X connect 2 0 18 2;
- #X connect 3 0 18 1;
- #X connect 4 0 18 0;
- #X connect 5 0 6 0;
- #X connect 6 0 4 0;
- #X connect 6 1 7 0;
- #X connect 7 0 3 0;
- #X connect 7 1 2 0;
- #X connect 8 0 14 0;
- #X connect 9 0 11 0;
- #X connect 11 0 12 0;
- #X connect 12 0 13 0;
- #X connect 14 0 15 0;
- #X connect 15 0 16 0;
- #X connect 17 0 5 0;
- #X connect 18 0 0 0;
- #X connect 18 0 9 0;
- #X connect 18 0 8 0;
- #X restore 213 166 pd colorize;
- #X msg 359 137 9 9 6 9 0 0 d b 0;
- #X msg 396 117 0 7 b 2 8 b b b b;
- #X msg 440 98 e 6 2 e 3 2 e c 2;
- #X msg 324 161 0 c c c f f 0 9 9;
- #X msg 455 74 c c c 9 9 9 3 3 3;
- #X msg 476 170 d d a 3 9 0 3 3 6;
- #X obj 50 255 unpack 0 0 0 0 0;
- #X obj 13 34 bng 14 250 50 0 empty empty empty 0 -6 0 8 -158106 -155649
- -228225;
- #X msg 63 203 10 40 50 500 100;
- #X connect 0 0 1 1;
- #X connect 1 0 5 0;
- #X connect 6 0 8 0;
- #X connect 8 0 7 0;
- #X connect 16 0 11 0;
- #X connect 16 0 12 0;
- #X connect 16 0 13 0;
- #X connect 16 0 14 0;
- #X connect 16 0 24 0;
- #X connect 16 1 15 0;
- #X connect 17 0 16 0;
- #X connect 18 0 16 0;
- #X connect 19 0 16 0;
- #X connect 20 0 16 0;
- #X connect 21 0 16 0;
- #X connect 22 0 16 0;
- #X connect 23 0 11 0;
- #X connect 23 1 13 0;
- #X connect 23 2 12 0;
- #X connect 23 3 14 0;
- #X connect 23 4 15 0;
- #X connect 24 0 25 0;
- #X connect 25 0 23 0;
- #X coords 0 0 1 1 273 40 1 10 10;