#N canvas 573 220 465 306 10; #X msg 109 37 read -c karplusstrong~.lua; #X obj 109 60 ofelia d -s11; #X obj 87 89 dac~; #X obj 109 14 loadbang; #N canvas 265 286 424 286 frequencia 0; #X obj 25 11 inlet~; #X obj 24 56 rfft~; #X obj 24 79 cyclone/cartopol~; #X obj 122 27 block~ 65536; #X obj 25 33 /~ 65536; #X obj 325 60 outlet; #X obj 325 37 r \$0-freq; #X obj 24 103 ofelia f -s11 \; s = ofSend("\$0-freq") \; local m = math.floor(20*65536/44100) \; for j = m+1 \, #a1 do \; if a1[j]/math.sqrt(j) > a1[m]/math.sqrt(m) then \; m = j \; end \; end \; freq = m*44100/65536 \; if freq>20 then s:sendFloat(freq) else s:sendFloat(0) end \; return a1 \;; #X connect 0 0 4 0; #X connect 1 0 2 0; #X connect 1 1 2 1; #X connect 2 0 7 0; #X connect 4 0 1 0; #X connect 6 0 5 0; #X restore 165 89 pd frequencia; #N canvas 0 96 416 267 tempo 0; #X obj 36 14 inlet; #X obj 38 46 inlet~; #X obj 17 95 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 43 115 timer 1 sec; #X obj 38 69 env~; #X obj 38 92 threshold~ 1 0 1 0; #X msg 330 114 \$2; #X obj 43 228 outlet; #X obj 51 139 ofelia f -c20 \; local threshold = 0.04 \; local c = math.abs(a[1] - a[2]) \; if c >= threshold then \; print("Warning: Time shifted by " .. c .. "s") \; end; #X connect 0 0 6 0; #X connect 0 0 2 0; #X connect 1 0 4 0; #X connect 2 0 3 0; #X connect 3 0 7 0; #X connect 3 0 8 0; #X connect 4 0 5 0; #X connect 5 1 3 1; #X connect 6 0 8 1; #X restore 22 77 pd tempo; #X obj 123 139 vu 15 120 empty empty -1 -8 0 10 -66577 -1 1 0; #X obj 122 112 - 100; #X floatatom 122 268 5 0 0 0 - - -; #X floatatom 22 100 5 0 0 3 Tempo_medido - -; #X obj 122 89 env~; #X text 21 13 Entrada \; F D; #X floatatom 165 112 5 0 0 1 FrequĂȘncia_medida - -; #X msg 22 44 440 2; #X msg 281 30 \; pd dsp 1; #X floatatom 315 136 5 0 0 1 FrequĂȘncia_medida - -; #X obj 315 89 sigmund~ pitch; #X obj 315 112 mtof; #X connect 0 0 1 0; #X connect 1 0 4 0; #X connect 1 0 5 1; #X connect 1 0 10 0; #X connect 1 0 2 1; #X connect 1 0 2 0; #X connect 1 0 16 0; #X connect 3 0 0 0; #X connect 3 0 14 0; #X connect 4 0 12 0; #X connect 5 0 9 0; #X connect 6 0 8 0; #X connect 7 0 6 0; #X connect 10 0 7 0; #X connect 13 0 1 0; #X connect 13 0 5 0; #X connect 16 0 17 0; #X connect 17 0 15 0;