#N canvas 229 1 852 890 10;
#X obj 266 309 f 0;
#X obj 648 188 pointer;
#X msg 648 163 traverse data \, bang;
#X obj 367 837 setsize trace-template bazoo;
#X obj 367 712 random 200;
#X obj 367 737 + 100;
#X obj 491 729 pointer;
#X msg 491 704 traverse data \, bang;
#X obj 63 641 pointer;
#X floatatom 490 621 0;
#X floatatom 231 516 0;
#X msg 63 610 bang;
#X floatatom 172 567 0;
#X floatatom 36 767 0;
#X floatatom 30 710 0;
#X floatatom 666 667 0;
#X floatatom 490 571 0;
#X floatatom 740 618 0;
#N canvas 0 0 810 634 data 1;
#X restore 282 405 pd data;
#N canvas 258 201 853 428 trace-template 0;
#X obj 228 22 field x float;
#X obj 229 51 field y float;
#X obj 229 81 field bazoo array point-template;
#X obj 299 291 plot bazoo 0 1 0 500 5;
#X text 121 178 This template describes a pitch/amplitude trace. The array "bazoo" holds the actual points. In this template \, y is always 0 and x is the starting location in pixels. THere are 5 pixels per point.;
#X obj 229 111 field voiceno float;
#X restore 282 430 pd trace-template;
#X obj 627 535 pointer;
#X msg 658 511 next;
#X floatatom 627 612 0;
#X msg 706 82 \; data clear;
#N canvas 296 428 600 400 point-template 0;
#X obj 326 58 field y float;
#X obj 326 88 field amp float;
#X text 113 156 This template describes a single point on a pitch trace (cf. trace-template which describes the trace itself.);
#X text 113 203 "y" is the field that is shown on the graph \; it's - 4 * pitch. You also get an "amp" field in dB \, which you can't see as a plot (yet).;
#X restore 282 455 pd point-template;
#X obj 666 642 getsize trace-template bazoo;
#X msg 627 487 traverse data \, next;
#X obj 29 671 get point-template y;
#X obj 36 802 set point-template y;
#X obj 172 592 element trace-template bazoo;
#X obj 231 558 setsize trace-template bazoo;
#X obj 490 596 set trace-template x;
#X obj 490 646 set trace-template y;
#X msg 367 687 bang;
#X obj 367 762 append trace-template x;
#X obj 627 587 get trace-template x y;
#X obj 367 787 t b p;
#X msg 367 812 5;
#X obj 687 131 s clear-traces;
#X obj 650 219 s last-in-list;
#X msg 647 59 bang;
#X obj 647 84 t b b;
#X obj 608 221 f 0;
#X obj 607 249 s nframe;
#X obj 459 139 r nframe;
#X obj 443 166 f;
#X obj 443 191 + 1;
#X obj 443 216 s nframe;
#X obj 443 81 r done-frame;
#X obj 451 108 s done-adding-traces;
#X obj 218 41 r component;
#X obj 218 66 unpack;
#X obj 298 69 s amp;
#X obj 358 96 s frequency;
#X obj 302 127 s pitch;
#X obj 270 152 s added-to-trace;
#X obj 266 334 s started-new-trace;
#X obj 253 207 r added-to-trace;
#X obj 270 127 f 0;
#X obj 253 182 s add-to-trace;
#X obj 218 91 t b b b b f;
#X obj 237 238 f;
#X obj 237 263 sel 0;
#X obj 237 288 t b b;
#X obj 237 358 s start-new-trace;
#X obj 647 34 r clear-all;
#X msg 43 42 \; clear-all bang \; f-threshold 20;
#X msg 41 182 \; component 60 80 \; component 72 80 \; done-frame bang;
#X msg 41 255 \; component 60.5 80 \; component 72.5 80 \; done-frame bang;
#X msg 41 328 \; component 61 80 \; component 73 80 \; done-frame bang;
#X msg 41 401 \; component 60 80 \; component 79 80 \; done-frame bang;
#X obj 361 69 mtof;
#X msg 34 482 \; component 48 80 \; component 60 80 \; done-frame bang;
#X obj 523 423 add-trace.pd 1;
#X obj 523 448 add-trace.pd 2;
#X connect 0 0 56 0;
#X connect 1 0 39 0;
#X connect 2 0 1 0;
#X connect 4 0 5 0;
#X connect 5 0 34 0;
#X connect 6 0 34 1;
#X connect 7 0 6 0;
#X connect 8 0 27 0;
#X connect 9 0 32 0;
#X connect 10 0 30 0;
#X connect 11 0 8 0;
#X connect 12 0 29 0;
#X connect 13 0 28 0;
#X connect 16 0 31 0;
#X connect 20 0 30 1;
#X connect 20 0 31 1;
#X connect 20 0 32 1;
#X connect 20 0 29 1;
#X connect 20 0 35 0;
#X connect 20 0 25 0;
#X connect 21 0 20 0;
#X connect 25 0 15 0;
#X connect 26 0 20 0;
#X connect 27 0 14 0;
#X connect 29 0 8 0;
#X connect 29 0 28 1;
#X connect 33 0 4 0;
#X connect 34 0 36 0;
#X connect 35 0 22 0;
#X connect 35 1 17 0;
#X connect 36 0 37 0;
#X connect 36 1 3 1;
#X connect 37 0 3 0;
#X connect 40 0 41 0;
#X connect 41 0 2 0;
#X connect 41 0 42 0;
#X connect 41 1 23 0;
#X connect 41 1 38 0;
#X connect 42 0 43 0;
#X connect 44 0 45 1;
#X connect 45 0 46 0;
#X connect 46 0 47 0;
#X connect 48 0 45 0;
#X connect 48 0 49 0;
#X connect 50 0 51 0;
#X connect 51 0 60 0;
#X connect 51 1 52 0;
#X connect 57 0 61 1;
#X connect 58 0 55 0;
#X connect 60 1 61 0;
#X connect 60 2 59 0;
#X connect 60 3 58 0;
#X connect 60 4 54 0;
#X connect 60 4 71 0;
#X connect 61 0 62 0;
#X connect 62 0 63 0;
#X connect 63 0 64 0;
#X connect 63 1 0 0;
#X connect 65 0 40 0;
#X connect 71 0 53 0;
