#N canvas 143 0 729 407 12; #X obj 47 11 pique; #X text 105 12 -- find peaks in an FFT spectrum; #X obj 214 174 rfft~; #X obj 131 129 osc~ 2000; #X graph graph2 0 -64 63 64 519 179 719 39; #X array fft-real 64 float; #X pop; #X graph graph3 0 -64 63 64 519 327 719 187; #X array fft-imag 64 float; #X pop; #X obj 214 215 tabwrite~ fft-real; #X obj 245 240 tabwrite~ fft-imag; #X obj 315 158 metro 1000; #X obj 315 116 loadbang; #X msg 315 138 1; #X obj 91 349 pique; #X msg 91 322 64 fft-real fft-imag 10; #X obj 91 376 print; #X obj 205 132 osc~ 5000; #X text 25 37 pique takes unwindowed FFT analyses as input (they should be stored in arrays) and outputs a list of peaks \, giving their peak number \, frequency \, amplitude \, and phase (as a cosine/sine pair.); #X text 13 289 message argumnets: number of FFT points \, fft real part \, fft imaginary part \, maximum number of peaks to report.; #X text 578 387 updated for Pd 0.31.; #X connect 2 0 6 0; #X connect 2 1 7 0; #X connect 3 0 2 0; #X connect 8 0 6 0; #X connect 8 0 7 0; #X connect 9 0 10 0; #X connect 10 0 8 0; #X connect 11 0 13 0; #X connect 12 0 11 0; #X connect 14 0 2 0;