#N canvas 0 26 450 300 10;
#N canvas 5 5 639 472 windowing 0;
#X obj 62 441 outlet~;
#X obj 62 65 inlet~;
#X obj 62 142 bfft~;
#X obj 62 365 ibfft~;
#X floatatom 85 173 5 0 0 0 - - -;
#X obj 62 199 vol~;
#X text 60 6 bwin~ multiplies a signal block with a window;
#X text 211 310 after maximizing the spectrum is multiplied by a pink
noise envelope;
#X obj 62 250 dist~ 1;
#X text 211 105 apply analysis window;
#X text 211 172 set drive;
#X text 212 251 soft clip spectral data;
#X text 212 133 transform block to freq domain;
#X text 210 360 transform block back to time domain;
#X text 212 401 undo analysis window + apply synthesis window;
#X text 212 39 this example is a poor man's spectral maximizer using
bwin~ bfft~ bifft~ and dist~;
#X obj 62 225 bwin~ bfft_blue;
#X obj 62 327 bwin~ bfft_pink;
#X obj 62 401 bwin~ hann/hamming;
#X obj 62 106 bwin~ hamming;
#X msg 344 207 type bfft_db/octave \$1;
#X floatatom 517 172 5 0 0 0 - - -;
#X msg 345 277 type bfft_db/octave \$1;
#X floatatom 519 244 5 0 0 0 - - -;
#X obj 554 437 block~ 1024 2;
#X connect 1 0 19 0;
#X connect 2 0 5 0;
#X connect 3 0 18 0;
#X connect 4 0 5 1;
#X connect 5 0 16 0;
#X connect 8 0 17 0;
#X connect 16 0 8 0;
#X connect 17 0 3 0;
#X connect 18 0 0 0;
#X connect 19 0 2 0;
#X connect 20 0 16 0;
#X connect 21 0 20 0;
#X connect 22 0 17 0;
#X connect 23 0 22 0;
#X restore 53 88 pd windowing;
#X obj 41 219 dac~;
#X obj 53 150 vol~;
#X floatatom 76 124 5 0 0 0 - - -;
#X obj 53 41 adc~ 1;
#N canvas 379 254 494 344 META 0;
#X text 12 125 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
Wilkes for Pd version 0.42.;
#X text 12 5 KEYWORDS signal block_oriented;
#X text 12 45 DESCRIPTION multiply a signal block with a window;
#X text 12 65 INLET_0 signal type;
#X text 12 85 OUTLET_0 signal;
#X text 12 25 LICENSE GPL v2;
#X text 12 105 AUTHOR Tom Schouten <tom@zwizwa.be>;
#X restore 400 279 pd META;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 2 0 1 1;
#X connect 3 0 2 1;
#X connect 4 0 0 0;
