#N canvas 0 31 750 448 10; #X floatatom 128 105 5 0 100 2 thresh - -; #N canvas 0 0 450 300 (subpatch) 0; #X array testinput 1.31596e+06 float 2; #X coords 0 1 1.31596e+06 -1 300 60 1; #X restore 255 18 graph; #X obj 115 71 tabplay~ testinput; #X obj 575 252 soundfiler; #X obj 575 218 openpanel; #X msg 575 235 read -resize \$1 testinput; #X obj 575 203 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 115 41 bng 15 250 50 0 empty empty play 0 -6 0 8 -262144 -1 -1; #X obj 199 54 spigot; #X obj 228 39 tgl 15 0 empty empty loop 0 -6 0 8 -262144 -1 -1 0 1 ; #X obj 235 121 tgl 15 0 empty empty on 0 -6 0 8 -262144 -1 -1 0 1; #N canvas 0 0 450 300 testload 0; #X floatatom 118 256 0 0 0 0 - - -; #X obj 118 168 cputime; #X obj 118 28 loadbang; #X obj 118 112 metro 1000; #X msg 118 56 1; #X floatatom 118 84 0 0 0 0 - - -; #X obj 118 140 t b b; #X obj 118 228 * 0.1; #X text 163 84 <-- on/off; #X text 51 284 CPU load in percent; #X connect 1 0 7 0; #X connect 2 0 4 0; #X connect 3 0 6 0; #X connect 4 0 5 0; #X connect 5 0 3 0; #X connect 6 0 1 0; #X connect 6 1 1 1; #X connect 7 0 0 0; #X restore 62 240 pd testload; #N canvas 0 0 450 300 voicingdet~ 0; #X obj 95 74 inlet; #X obj 51 74 inlet~; #X obj 259 117 inlet; #X obj 259 137 switch~ 1024 1 1; #X obj 51 126 voicing_detector~; #X text 83 59 threshold; #X obj 151 73 inlet; #X text 148 58 search; #X obj 206 73 inlet; #X obj 165 220 outlet; #X obj 51 218 outlet; #X text 149 27 peaks; #X text 204 40 samples; #X text 207 57 window; #X connect 0 0 4 1; #X connect 1 0 4 0; #X connect 2 0 3 0; #X connect 4 0 10 0; #X restore 116 136 pd voicingdet~; #N canvas 0 0 450 300 (subpatch) 0; #X array voicing 300 float 3; #A 0 0 0 0 1 0 0 0 0 1 1 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 0 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0; #X coords 0 2 299 -1 300 50 1; #X restore 254 223 graph; #N canvas 0 0 450 300 (subpatch) 0; #X array amdf_pitch 300 float 3; #A 0 0 52.6308 0 0 0 0 0 0 0 61.6769 0 0 79.9839 81.0009 81.3891 80.4557 68.64 64.1892 0 66.4698 50.6665 0 0 0 0 0 0 0 50.6665 50.6665 50.6665 72.3208 80.0773 72.0166 68.0305 50.6665 0 0 0 0 0 0 0 50.6665 0 0 0 0 50.6665 0 0 50.6665 50.6665 0 0 0 50.6665 77.8829 50.6665 0 61.011 63.8438 60.475 54.3953 52.2985 0 58.8633 51.3383 63.4215 71.0568 62.7265 70.8633 66.6197 0 50.6665 0 55.7069 50.6665 50.6665 50.6665 0 0 0 0 0 0 0 0 0 70.4828 68.3603 0 72.7731 50.6665 0 62.1356 0 0 50.6665 0 0 0 0 0 50.6665 50.6665 50.6665 71.1217 75.6314 0 0 0 0 0 0 0 0 50.6665 0 0 0 50.6665 0 0 0 0 0 78.0763 55.3107 50.6665 0 0 0 50.6665 0 50.6665 0 50.6665 58.9598 76.4972 76.5862 0 50.6665 50.6665 0 0 0 56.3603 50.6665 0 0 50.6665 0 0 50.6665 0 73.5356 70.5499 76.0095 0 50.6665 0 0 50.9078 0 0 0 0 0 0 0 0 0 63.716 79.2014 76.856 0 0 80.648 50.6665 50.6665 0 50.6665 0 0 0 0 50.6665 0 0 0 0 0 0 50.6665 0 0 0 0 0 0 0 0 68.4159 0 50.6665 81.3498 63.4605 81.0393 0 0 0 0 0 0 54.5446 60.9024 50.6665 0 50.6665 0 0 0 0 0 0 0 0 0 57.4776 63.716 55.3107 0 0 0 0 0 0 0 50.6665 0 50.6665 0 0 0 50.6665 50.6665 50.6665 50.6665 50.6665 0 0 0 0 0 0 0 69.3891 64.6309 0 50.6665 0 0 0 50.6665 0 0 0 50.6665 0 0 0 70.4077 80.6965 79.0156 80.7342 78.1348 76.2328 78.4102 78.9541 0 0 50.6665 0 0 50.6665 0 50.6665 0 50.6665 0 67.0773 56.6965 0 0 50.6665 50.6665 0 0 0; #X coords 0 128 299 0 300 50 1; #X restore 253 159 graph; #N canvas 0 0 450 300 (subpatch) 0; #X array fiddle_pitch 300 float 3; #A 0 42.759 42.5032 42.473 54.6862 54.2724 88.0229 88.184 69.9998 46.2469 46.1609 36.5253 51.6493 56.2251 57.3686 56.4619 54.6808 0 0 54.0894 93.1511 68.6615 52.7942 81.0395 66.0331 51.7957 0 68.5582 61.4413 52.6465 71.037 58.4423 91.8432 92.069 40.0203 0 0 36.8793 58.0122 47.6222 46.0941 91.8441 91.9697 55.7681 56.0344 55.7733 0 80.8823 81.7433 84.8554 57.472 55.8532 0 115.991 115.665 77.5622 0 92.1532 95.0497 50.2136 50.1965 49.5168 48.9704 0 110.374 80.4211 81.7533 120.147 96.2099 77.1305 105.556 105.273 56.8668 57.1058 58.1518 58.2318 58.253 57.9551 57.9389 57.2086 58.607 58.7608 58.5285 57.4834 56.6055 44.5336 43.9182 0 55.8955 55.8118 56.3424 55.9227 0 58.3825 73.8235 73.4276 0 55.4181 54.9552 53.5732 54.7674 0 70.8503 75.9806 82.2004 80.4199 79.4119 68.8766 77.895 104.482 105.457 0 42.9514 44.0048 0 43.5638 42.7844 43.0441 43.5913 45.0992 55.9686 55.7438 0 56.3861 0 118.578 119.062 91.5953 84.6976 82.4846 116.179 80.4236 0 70.9708 52.6736 36.9783 34.1847 42.4984 73.9364 38.2027 37.8997 74.0349 40.0425 42.1891 0 0 46.7969 0 42.5967 57.7423 55.0562 55.214 42.5583 0 0 107.128 66.2461 0 70.8881 62.0142 93.8698 70.2977 69.6271 65.6152 54.8576 82.2464 46.7154 57.0915 52.4897 0 58.2819 0 0 48.8379 48.3517 86.5587 57.4985 41.8914 100.744 77.1489 88.6531 101.163 78.1291 0 58.1589 57.7381 56.8702 54.7868 37.3185 55.048 44.2793 43.7839 43.6901 44.3304 45.5636 46.8364 47.4256 46.8557 0 66.0394 0 0 37.3535 53.0011 52.3631 50.8664 52.4876 53.4121 53.9883 42.9063 43.671 56.3301 0 0 0 0 85.7498 92.9351 92.7796 51.8324 51.7119 50.8787 50.212 49.7494 49.4586 48.6298 57.9294 44.3071 42.9568 42.047 39.9829 40.5865 40.5722 42.9498 47.521 48.1418 38.3092 52.8257 53.4445 51.6414 50.1592 47.5694 44.9923 43.6918 42.54 42.1952 42.3799 88.6103 92.9605 90.0537 82.4926 0 80.5717 41.5044 53.2398 42.4218 38.5483 38.9727 45.9362 46.204 40.1976 0 102.734 103.735 103.027 42.8539 44.4726 46.0255 46.6465 58.2084 40.4422 0 70.0279 73.9915 61.9472 70.0716 81.9317 81.5628 94.0509 53.7554 66.0479 0 46.3012 44.9257 46.9063 47.3438 65.9144 46.9733 104.83 88.2914 79.6901 0 74.9976 0 71.7403 45.991 44.0293 44.2378 44.1106 43.711 43.0768; #X coords 0 128 300 0 300 50 1; #X restore 254 94 graph; #N canvas 0 0 450 300 voxwrite 0; #X obj 87 73 inlet; #X obj 87 103 t f b; #X obj 117 132 count 300; #X obj 87 174 tabwrite voicing; #X obj 146 88 r \$0-reset-counters; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 1 1 2 0; #X connect 2 0 3 1; #X connect 4 0 2 1; #X restore 116 159 pd voxwrite; #N canvas 0 0 450 300 amdfwrite 0; #X obj 87 48 inlet; #X obj 87 103 t f b; #X obj 117 132 count 300; #X obj 146 88 r \$0-reset-counters; #X obj 87 174 tabwrite amdf_pitch; #X obj 87 75 ftom; #X connect 0 0 5 0; #X connect 1 0 4 0; #X connect 1 1 2 0; #X connect 2 0 4 1; #X connect 3 0 2 1; #X connect 5 0 1 0; #X restore 146 185 pd amdfwrite; #X obj 21 170 unpack f f; #N canvas 0 0 450 300 fidwrite 0; #X obj 87 73 inlet; #X obj 87 103 t f b; #X obj 117 132 count 300; #X obj 146 88 r \$0-reset-counters; #X obj 87 174 tabwrite fiddle_pitch; #X connect 0 0 1 0; #X connect 1 0 4 0; #X connect 1 1 2 0; #X connect 2 0 4 1; #X connect 3 0 2 1; #X restore 21 196 pd fidwrite; #X floatatom 173 105 3 3 50 2 peaks - -; #N canvas 0 0 450 300 amgatewrite 0; #X obj 161 28 inlet; #X obj 87 121 t f b; #X obj 117 150 count 300; #X obj 146 106 r \$0-reset-counters; #X obj 59 25 inlet; #X obj 59 45 swap; #X obj 59 83 spigot; #X msg 106 83 0; #X obj 87 174 tabwrite amdf_gated_pitch; #X connect 0 0 5 1; #X connect 1 0 8 0; #X connect 1 1 2 0; #X connect 2 0 8 1; #X connect 3 0 2 1; #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 5 1 6 1; #X connect 5 1 7 0; #X connect 6 0 1 0; #X connect 7 0 1 0; #X restore 107 298 pd amgatewrite; #N canvas 0 0 450 300 (subpatch) 0; #X array amdf_gated_pitch 300 float 3; #A 0 0 0 0 280.892 0 152.595 0 0 0 0 0 0 0 745.652 0 715.135 0 867.135 0 450 0 807.692 0 295.973 0 210.054 0 0 0 0 0 0 0 0 0 152.595 0 0 0 0 0 0 0 613.636 0 907.12 0 869.577 0 842.675 0 439.925 0 755.137 0 658.209 0 550.791 0 0 0 0 0 152.595 0 152.595 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 190.909 0 152.595 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 152.595 0 152.595 0 152.595 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 152.595 0 152.595 0 0 0 0 0 0 0 0 0 0 0 0 152.595 0 0 0 0 0 152.595 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 152.595 0 0 0 0 0 0 0 0 0 0 0 0 0 152.595 0 0 0 0 0 0 0 0 0 0 882 0 486.04 0 825.401 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 152.595 0 152.595 0 0 0 0 0 781.159 0 827.614 0 494.395 0 484.869 0 832.076 0 152.595 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; #X coords 0 128 299 0 300 50 1; #X restore 254 288 graph; #X floatatom 163 260 5 0 0 0 - - -; #X floatatom 177 220 5 0 0 0 - - -; #X floatatom 6 237 5 0 0 0 - - -; #X obj 106 322 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 105 378 s \$0-reset_counters; #X obj 593 56 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 ; #X msg 593 89 \; pd dsp \$1; #X msg 104 352 0; #X obj 575 326 soundfiler; #X obj 575 277 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 575 292 savepanel; #X msg 575 309 write \$1 testinput; #X obj 16 136 fiddle~ 2048 1; #X obj 204 255 print; #X floatatom 210 105 3 2 50 2 win - -; #X obj 160 203 moses 20000; #X msg 218 223 0; #X obj 176 238 ftom; #X floatatom 36 265 5 0 0 0 - - -; #X obj 17 314 -; #X floatatom 16 339 5 0 0 0 - - -; #N canvas 379 254 494 344 META 0; #X text 12 165 HELP_PATCH_AUTHORS Ed Kelly. Revised by Jonathan Wilkes for Pd-extended 0.42 to conform to the PDDP template.; #X text 12 5 KEYWORDS signal analysis; #X text 12 45 DESCRIPTION find a zero-crossing point within a dsp block ; #X text 12 145 AUTHOR Ed Kelly ; #X text 12 65 INLET_0 signal bang mode; #X text 12 85 INLET_1 float; #X text 12 105 OUTLET_0 float; #X text 12 125 OUTLET_1 float; #X text 12 25 LICENSE GPL v3; #X restore 688 400 pd META; #X connect 0 0 12 1; #X connect 2 0 12 0; #X connect 2 0 35 0; #X connect 2 1 8 0; #X connect 4 0 5 0; #X connect 5 0 3 0; #X connect 6 0 4 0; #X connect 7 0 2 0; #X connect 8 0 2 0; #X connect 9 0 8 1; #X connect 10 0 12 4; #X connect 12 0 16 0; #X connect 12 0 23 0; #X connect 12 1 38 0; #X connect 18 0 19 0; #X connect 18 0 25 0; #X connect 20 0 12 2; #X connect 23 0 21 0; #X connect 24 0 40 0; #X connect 25 0 42 0; #X connect 26 0 30 0; #X connect 28 0 29 0; #X connect 30 0 27 0; #X connect 32 0 33 0; #X connect 33 0 34 0; #X connect 34 0 31 0; #X connect 35 2 18 0; #X connect 37 0 12 3; #X connect 38 0 24 0; #X connect 38 0 21 1; #X connect 38 1 39 0; #X connect 39 0 21 1; #X connect 40 0 41 0; #X connect 41 0 42 1; #X connect 42 0 43 0;