#N canvas 399 22 531 624 10;
#X obj 282 351 line~;
#X obj 34 442 cos~;
#X floatatom 59 542 0 0 0 0 - - -;
#N canvas 176 241 532 273 output 0;
#X obj 338 160 t b;
#X obj 338 110 f;
#X obj 338 60 inlet;
#X text 344 29 mute;
#X obj 338 185 f;
#X msg 425 178 0;
#X msg 338 85 bang;
#X obj 338 135 moses 1;
#X obj 398 111 moses 1;
#X obj 83 148 dbtorms;
#X obj 398 86 r master-lvl;
#X obj 83 42 r master-lvl;
#X obj 338 210 s master-lvl;
#X obj 17 148 inlet~;
#X obj 199 41 inlet;
#X text 199 18 level;
#X obj 199 100 s master-lvl;
#X msg 96 65 set \$1;
#X obj 96 89 outlet;
#X msg 214 64 \; pd dsp 1;
#X obj 83 194 line~;
#X obj 22 212 *~;
#X obj 22 241 dac~;
#X obj 83 171 pack 0 50;
#X text 15 125 audio;
#X text 93 110 show level;
#X obj 17 177 hip~ 1;
#X connect 0 0 4 0;
#X connect 1 0 7 0;
#X connect 2 0 6 0;
#X connect 4 0 12 0;
#X connect 5 0 12 0;
#X connect 6 0 1 0;
#X connect 7 0 0 0;
#X connect 7 1 5 0;
#X connect 8 1 4 1;
#X connect 9 0 23 0;
#X connect 10 0 1 1;
#X connect 10 0 8 0;
#X connect 11 0 9 0;
#X connect 11 0 17 0;
#X connect 13 0 26 0;
#X connect 14 0 16 0;
#X connect 14 0 19 0;
#X connect 17 0 18 0;
#X connect 20 0 21 1;
#X connect 21 0 22 0;
#X connect 21 0 22 1;
#X connect 23 0 20 0;
#X connect 26 0 21 0;
#X restore 34 564 pd output;
#X msg 85 542 MUTE;
#X obj 282 327 pack 0 50;
#X floatatom 282 255 0 0 0 0 - - -;
#X obj 34 356 -~ 0.5;
#X obj 34 398 *~;
#X obj 282 279 / 10;
#X obj 34 420 clip~ -0.5 0.5;
#X text 279 232 bandwidth;
#X obj 282 375 +~ 1;
#X obj 34 465 +~ 1;
#X obj 184 436 cos~;
#X obj 34 489 *~;
#X floatatom 198 274 4 0 0 0 - - -, f 4;
#X obj 198 298 / 10;
#X obj 184 414 *~;
#X text 196 236 center;
#X text 196 251 freq.;
#X obj 282 303 max 0;
#X obj 198 370 line~;
#X obj 198 346 pack 0 50;
#X obj 198 322 max 0;
#X floatatom 34 308 4 0 0 0 - - -, f 4;
#X obj 34 332 phasor~ 100;
#X text 120 542 <-- output;
#X text 31 284 freq.;
#X text 31 269 fundamental;
#N canvas 0 0 450 300 (subpatch) 0;
#X array spectrum 128 float 0;
#X coords 0 500 128 0 256 130 1;
#X restore 240 432 graph;
#X msg 91 495 bang;
#N canvas 204 17 358 238 fft 0;
#X obj 46 48 inlet~;
#X obj 159 181 tabwrite~ spectrum;
#X obj 159 145 inlet;
#X obj 46 78 rfft~;
#X obj 46 111 *~;
#X obj 77 111 *~;
#X obj 46 141 sqrt~;
#X obj 191 45 block~ 1024 1;
#X connect 0 0 3 0;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 3 0 4 1;
#X connect 3 1 5 0;
#X connect 3 1 5 1;
#X connect 4 0 6 0;
#X connect 5 0 6 0;
#X connect 6 0 1 0;
#X restore 58 517 pd fft;
#X text 239 572 0;
#X text 487 569 5512;
#X text 127 495 <-- graph;
#X text 19 64 Here's the spectrum you get. Note that even if you put
the center frequency right on a partial \, there is significant energy
in neighboring partials (try fundamental 440 \, "center freq" 30 \,
bandwidth 0.);
#X text 18 134 The center frequency is in units of ten per partial
\, or in other words a value of "30" means "centered on the third partial".
;
#X text 22 185 This technique only works if you're doing Hanning-window
shaped PWM--you can't combine this naturally with FM or with the waveshaping
technique we'll see later.;
#X obj 1 1 cnv 15 445 20 empty \$0-pddp.cnv.header windowed_packet_spectrum
20 10 1 18 -261139 -33289 0;
#X obj 407 2 pddp/pddplink http://puredata.info/dev/pddp -text pddp
;
#X obj 1 602 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.34. 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 windowed packet spectrum;
#X restore 392 604 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 7 2 windowed packet spectrum- Related Help Documents;
#X text 19 37 links:;
#X restore 103 604 pd References;
#X obj 6 604 pddp/pddplink ../5.reference/pddp/help.pd -text help;
#X connect 0 0 12 0;
#X connect 1 0 13 0;
#X connect 2 0 3 1;
#X connect 3 0 2 0;
#X connect 4 0 3 2;
#X connect 5 0 0 0;
#X connect 6 0 9 0;
#X connect 7 0 8 0;
#X connect 7 0 18 0;
#X connect 8 0 10 0;
#X connect 9 0 21 0;
#X connect 10 0 1 0;
#X connect 12 0 8 1;
#X connect 13 0 15 0;
#X connect 14 0 15 1;
#X connect 15 0 3 0;
#X connect 15 0 32 0;
#X connect 16 0 17 0;
#X connect 17 0 24 0;
#X connect 18 0 14 0;
#X connect 21 0 5 0;
#X connect 22 0 18 1;
#X connect 23 0 22 0;
#X connect 24 0 23 0;
#X connect 25 0 26 0;
#X connect 26 0 7 0;
#X connect 31 0 32 1;
