aboutsummaryrefslogtreecommitdiff
path: root/rhythm_estimator.pd
diff options
context:
space:
mode:
Diffstat (limited to 'rhythm_estimator.pd')
-rw-r--r--rhythm_estimator.pd43
1 files changed, 43 insertions, 0 deletions
diff --git a/rhythm_estimator.pd b/rhythm_estimator.pd
new file mode 100644
index 0000000..f928cd1
--- /dev/null
+++ b/rhythm_estimator.pd
@@ -0,0 +1,43 @@
+#N canvas 249 170 627 423 10;
+#X obj 414 255 loadbang;
+#X floatatom 145 250;
+#X obj 36 34 inlet;
+#X obj 43 394 outlet;
+#X obj 201 395 outlet;
+#X obj 44 287 rhythm_slave_metro;
+#X obj 453 300 metro 500;
+#X msg 456 279 1;
+#X obj 256 30 inlet;
+#X obj 256 56 route histogram quantum slave_metro;
+#X text 27 13 Onset bangs;
+#X text 225 12 Inlet for setting parameters;
+#X obj 436 367 table \$1-histogram;
+#X msg 438 332 resize 320;
+#X obj 72 105 rhythm_ioi_histogram \$1-histogram;
+#X obj 77 181 rhythm_quantum \$1-histogram;
+#X text 363 228 Initialize and refresh IOI histogram array;
+#X text 254 182 Compute quantum duration from IOI histogram;
+#X text 286 105 Calculate IOI histogram from incoming onset times;
+#X text 161 288 Send bangs in sync with incoming onsets;
+#X text 91 394 "click";
+#X text 175 252 Current quantum duration [ms];
+#X text 246 394 quantum duration;
+#X connect 0 0 13 0;
+#X connect 0 0 7 0;
+#X connect 1 0 4 0;
+#X connect 1 0 5 1;
+#X connect 2 0 5 0;
+#X connect 2 0 14 0;
+#X connect 5 0 3 0;
+#X connect 6 0 13 0;
+#X connect 7 0 6 0;
+#X connect 8 0 9 0;
+#X connect 9 0 14 0;
+#X connect 9 1 15 0;
+#X connect 9 2 5 0;
+#X connect 9 3 5 0;
+#X connect 9 3 14 0;
+#X connect 9 3 15 0;
+#X connect 13 0 12 0;
+#X connect 14 0 15 0;
+#X connect 15 0 1 0;