#N canvas 450 33 943 720 12;
#X obj 230 125 inlet;
#X obj 299 439 line~;
#X obj 252 314 sqrt;
#X obj 299 584 *~;
#X obj 299 463 *~;
#X obj 299 487 *~;
#X obj 222 562 inlet~;
#X obj 222 650 outlet~;
#X obj 222 606 +~;
#X obj 584 405 line~;
#X obj 584 429 *~;
#X obj 584 453 *~;
#X obj 484 297 mtof;
#X obj 455 231 +;
#X obj 484 321 sqrt;
#X obj 484 345 sqrt;
#X obj 584 381 pack;
#X obj 319 387 r reset;
#X msg 319 411 0 20;
#X obj 230 164 data-start template-toplevel;
#X obj 96 249 data-array template-toplevel amp template-amp;
#X obj 479 193 data-array template-toplevel pitch template-pitch;
#X obj 358 431 noise~;
#X obj 535 273 +;
#X obj 535 296 mtof;
#X obj 535 320 sqrt;
#X obj 535 344 sqrt;
#X obj 635 405 line~;
#X obj 635 429 *~;
#X obj 635 453 *~;
#X obj 635 381 pack;
#X obj 534 405 line~;
#X obj 534 429 *~;
#X obj 534 453 *~;
#X obj 534 381 pack;
#X obj 434 298 mtof;
#X obj 434 322 sqrt;
#X obj 434 346 sqrt;
#X obj 434 276 -;
#X obj 359 514 vcf~ 10;
#X obj 434 514 vcf~ 10;
#X obj 509 510 vcf~ 10;
#X text 77 29 This is an abstraction used in the sequencer example.
Here we take care of the audio synthesis \, according to timed controls
from the the "data-start" and "data-array" subpatches., f 62;
#X text 674 443 calculate time-varying center frequencies, f 22;
#X text 572 508 ... for three VCFs acting on a noise source.;
#X text 215 438 Amplitude;
#X text 216 454 envelope;
#X text 224 673 summing bus;
#X text 340 95 Pitch is in eighth-tones (because 4 pixels per half
tone looks reasonable on the screen.) Hence the * 0.25 objects below.
, f 43;
#X obj 252 287 / 2;
#X obj 299 355 pack float float;
#X connect 0 0 19 0;
#X connect 1 0 4 0;
#X connect 1 0 4 1;
#X connect 2 0 50 0;
#X connect 3 0 8 1;
#X connect 4 0 5 0;
#X connect 4 0 5 1;
#X connect 5 0 3 0;
#X connect 6 0 8 0;
#X connect 8 0 7 0;
#X connect 9 0 10 0;
#X connect 9 0 10 1;
#X connect 10 0 11 0;
#X connect 10 0 11 1;
#X connect 11 0 40 1;
#X connect 12 0 14 0;
#X connect 13 0 38 0;
#X connect 13 0 12 0;
#X connect 13 0 23 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 9 0;
#X connect 17 0 18 0;
#X connect 18 0 1 0;
#X connect 19 0 20 0;
#X connect 19 0 21 0;
#X connect 19 1 13 1;
#X connect 20 1 49 0;
#X connect 20 2 50 1;
#X connect 21 0 13 0;
#X connect 21 1 38 1;
#X connect 21 1 23 1;
#X connect 21 2 16 1;
#X connect 21 2 34 1;
#X connect 21 2 30 1;
#X connect 22 0 39 0;
#X connect 22 0 40 0;
#X connect 22 0 41 0;
#X connect 23 0 24 0;
#X connect 24 0 25 0;
#X connect 25 0 26 0;
#X connect 26 0 30 0;
#X connect 27 0 28 0;
#X connect 27 0 28 1;
#X connect 28 0 29 0;
#X connect 28 0 29 1;
#X connect 29 0 41 1;
#X connect 30 0 27 0;
#X connect 31 0 32 0;
#X connect 31 0 32 1;
#X connect 32 0 33 0;
#X connect 32 0 33 1;
#X connect 33 0 39 1;
#X connect 34 0 31 0;
#X connect 35 0 36 0;
#X connect 36 0 37 0;
#X connect 37 0 34 0;
#X connect 38 0 35 0;
#X connect 39 0 3 1;
#X connect 40 0 3 1;
#X connect 41 0 3 1;
#X connect 49 0 2 0;
#X connect 50 0 1 0;
