#N canvas 327 102 857 377 12;
#X text 85 158 frequency;
#X floatatom 16 173 0 0 0 0 - - -;
#X floatatom 15 65 0 0 63 0 - - -;
#X text 85 175 in Hz.;
#X obj 17 238 rfft~;
#X obj 16 148 / 64;
#X obj 653 14 loadbang;
#X msg 653 40 \; pd dsp 1;
#X text 129 260 <-- print analysis;
#X obj 36 16 framp~;
#X text 119 15 - estimate frequency and amplitude of FFT components
;
#X obj 16 270 framp~;
#X obj 103 322 print~ frequency;
#X obj 118 297 print~ amplitude;
#X obj 16 204 osc~;
#X text 329 90 Framp~ takes as input a rectangular-windowed FFT and
outputs \, for each FFT channel \, the estimated amplitude and frequency
of any component feeding that channel. A sinusoidal component should
appear in four components (or three in the special case of a sinusoid
exactly tuned to a bin.) Frequency output is in bins \, i.e. \, units
of SR/N.;
#X text 68 63 frequency in bins (< 63);
#X obj 15 90 t f b;
#X obj 73 88 samplerate~;
#X obj 16 120 *;
#X text 599 339 updated for Pd version 0.47;
#X text 329 202 The estimation is done according to the hop-1 trick
described in Puckette&Brown \, Accuracy of Frequency Estimates Using
the Phase Vocoder \, using a Hann window. A more sophisticated version
of this technique is used in the sigmund~ object.;
#X obj 103 259 bng 20 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X connect 1 0 14 0;
#X connect 2 0 17 0;
#X connect 4 0 11 0;
#X connect 4 1 11 1;
#X connect 5 0 1 0;
#X connect 6 0 7 0;
#X connect 11 0 12 0;
#X connect 11 1 13 0;
#X connect 14 0 4 0;
#X connect 17 0 19 0;
#X connect 17 1 18 0;
#X connect 18 0 19 1;
#X connect 19 0 5 0;
#X connect 22 0 12 0;
#X connect 22 0 13 0;
