#N canvas 433 97 448 560 10;
#X text 203 210 attack;
#X text 274 211 release;
#X obj 204 347 line~;
#X msg 275 305 0 500;
#X obj 21 329 phasor~ 50;
#X obj 21 377 *~;
#X obj 21 425 wrap~;
#X msg 204 305 1 2500;
#X obj 21 353 -~ 0.5;
#X msg 139 281 10 200;
#X obj 204 281 del 200;
#X text 18 37 This patch uses an envelope generator to control a sound.
When you hit "attack" two things happen. First \, the line~ object
rises to 10 in 200 milliseconds. Then after a "delay" of the same 200
msec \, the second message sends the line~ back down to 1 over another
2500 msec. The "release" just ramps us down to zero at the end.;
#X obj 21 473 output~;
#X obj 21 401 +~ 0.5;
#X obj 21 449 hip~ 5;
#X obj 204 230 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 275 231 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 214 258 stop;
#X text 18 112 You can hit the "attack" and/or "release" while something
is still going on from a previous attack or release \, and the envelope
generator does the ``right thing". In particular \, the release button
sends a "stop" to the "del" object \, in case it is still scheduled
to go off from a previous attack.;
#X text 18 187 The synthesis method is a form of waveshaping \, which
is the subject of a later chapter.;
#X obj 1 1 cnv 15 445 20 empty \$0-pddp.cnv.header envelope_generators
20 10 1 18 -261139 -33289 0;
#X obj 407 2 pddp/pddplink http://puredata.info/dev/pddp -text pddp
;
#X obj 1 538 cnv 15 445 20 empty \$0-pddp.cnv.footer empty 20 12 0
14 -233017 -33289 0;
#N canvas 44 246 494 284 META 0;
#X text 12 125 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 105 AUTHOR Miller Puckette;
#X text 12 85 LIBRARY PDDP;
#X text 12 5 GENRE tutorial;
#X text 12 45 LICENSE SIBSD;
#X text 12 145 HELP_PATCH_AUTHORS Updated for release 0.37. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 25 KEYWORDS signal;
#X text 12 65 DESCRIPTION envelope generators;
#X restore 392 540 pd META;
#N canvas 13 202 428 190 References 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -261139 -33289 0;
#X text 19 37 links:;
#X text 7 2 envelope generators- Related Help Documents;
#X restore 103 540 pd References;
#X obj 6 540 pddp/pddplink ../5.reference/pddp/help.pd -text help;
#X connect 2 0 5 1;
#X connect 3 0 2 0;
#X connect 4 0 8 0;
#X connect 5 0 13 0;
#X connect 6 0 14 0;
#X connect 7 0 2 0;
#X connect 8 0 5 0;
#X connect 9 0 2 0;
#X connect 10 0 7 0;
#X connect 13 0 6 0;
#X connect 14 0 12 0;
#X connect 15 0 10 0;
#X connect 15 0 9 0;
#X connect 16 0 3 0;
#X connect 16 0 17 0;
#X connect 17 0 10 0;
