aboutsummaryrefslogtreecommitdiff
path: root/patches/test-harmonizer2.pd
diff options
context:
space:
mode:
Diffstat (limited to 'patches/test-harmonizer2.pd')
-rwxr-xr-xpatches/test-harmonizer2.pd185
1 files changed, 185 insertions, 0 deletions
diff --git a/patches/test-harmonizer2.pd b/patches/test-harmonizer2.pd
new file mode 100755
index 0000000..ed41e1e
--- /dev/null
+++ b/patches/test-harmonizer2.pd
@@ -0,0 +1,185 @@
+#N canvas 74 28 903 675 12;
+#X symbolatom 157 205 18 0 0 2 next_chord - -;
+#N canvas 39 349 531 328 readme 0;
+#X text 59 31 howto populate the graph: play the chord \, when the
+output of [chord] is ok bang the "add" message. bang it each time you
+change chord \, it will store the transitions;
+#X text 56 120 howto ask for the next chord: play the chord \, bang
+the "set" message \, this will set the current chord without adding
+it to the graph's memory \, now bang the next 1 message. this chord_graph
+will respond with the chord you played most of the times after the
+current chord. you can send "next x" where x is from 0 to 1 \, 0 =
+max novelty \, 1= min novelty;
+#X text 56 259 you can save graph state sending the write message;
+#X restore 607 47 pd readme;
+#X obj 121 329 harmonizer;
+#X msg 52 286 current \$1;
+#X msg 158 283 target \$1;
+#X obj 52 262 symbol;
+#X obj 52 242 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 157 261 symbol;
+#X obj 289 261 int 36;
+#X obj 355 262 int 60;
+#X obj 426 260 int 67;
+#X obj 494 259 int 76;
+#X obj 566 262 int 84;
+#X obj 335 289 pack f f f f f;
+#X obj 358 233 t b b b b b;
+#X obj 246 369 unpack f f f f f;
+#X obj 153 97 symbol;
+#X obj 98 43 bng 15 250 50 0 empty empty change_chord 0 -6 0 8 -262144
+-1 -1;
+#X msg 153 121 set \$1;
+#N canvas 0 0 706 416 midi 0;
+#X obj 141 253 outlet;
+#X obj 271 31 notein;
+#X obj 271 66 chord 59;
+#X msg 175 149 add \$1;
+#X obj 175 121 symbol;
+#X obj 176 94 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 248 163 symbol;
+#X obj 249 136 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X msg 248 191 set \$1;
+#X symbolatom 311 101 25 0 0 0 - - -;
+#X connect 1 0 2 0;
+#X connect 1 1 2 1;
+#X connect 2 2 4 1;
+#X connect 2 2 6 1;
+#X connect 2 2 9 0;
+#X connect 3 0 0 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 6 0 8 0;
+#X connect 7 0 6 0;
+#X connect 8 0 0 0;
+#X restore 423 135 pd midi;
+#N canvas 0 0 454 304 fileIO 0;
+#X obj 143 225 outlet;
+#X msg 115 77 write test.graph;
+#X msg 145 105 read test.graph;
+#X msg 175 135 init 1;
+#X connect 1 0 0 0;
+#X connect 2 0 0 0;
+#X connect 3 0 0 0;
+#X restore 340 134 pd fileIO;
+#X obj 100 73 t b b;
+#X obj 157 228 t b a;
+#X obj 28 404 bang;
+#X obj 203 420 mtof;
+#X obj 252 419 mtof;
+#X obj 337 423 mtof;
+#X obj 180 601 dac~;
+#X obj 109 431 print;
+#X obj 74 111 f 1;
+#X msg 59 135 next \$1;
+#X obj 63 70 vsl 15 30 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1
+-1 2900 1;
+#X floatatom 32 112 5 0 0 0 - - -;
+#X obj 178 571 csoundapi~ bay.orc;
+#X msg 488 520 event i 10 0 17000 10 30;
+#X msg 488 543 event i 30 0 17000 2 30;
+#X msg 489 496 event i 25 0 17000 0.98 0.8 20000;
+#X obj 482 458 loadbang;
+#X msg 196 492 event i 9 0 10 \$1 80 0.5;
+#X obj 295 422 mtof;
+#X obj 381 424 mtof;
+#X obj 462 22 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
+;
+#X obj 462 41 metro 7000;
+#X obj 13 32 r novelty;
+#X obj 599 121 int 0;
+#X obj 646 120 + 1;
+#X obj 600 171 tabread tab-novelty;
+#X obj 600 194 s novelty;
+#X obj 685 119 table tab-novelty;
+#X obj 600 147 % 10;
+#X obj 462 63 t b b;
+#X msg 467 377 \; tab-novelty 0 1 1 0.8 0.7 0.3 0.5 0.9 0.1 0 0.2;
+#X obj 220 96 symbol;
+#X msg 220 124 tonality \$1;
+#X obj 220 72 bng 15 250 50 0 empty empty change 0 -6 0 8 -262144 -1
+-1;
+#X obj 19 160 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X symbolatom 305 204 15 0 0 2 tonality - -;
+#X obj 83 169 chords_memory test.graph;
+#X connect 2 0 15 0;
+#X connect 2 0 28 0;
+#X connect 3 0 2 0;
+#X connect 4 0 2 0;
+#X connect 5 0 3 0;
+#X connect 6 0 5 0;
+#X connect 7 0 4 0;
+#X connect 8 0 13 0;
+#X connect 9 0 13 1;
+#X connect 10 0 13 2;
+#X connect 11 0 13 3;
+#X connect 12 0 13 4;
+#X connect 13 0 2 0;
+#X connect 14 0 8 0;
+#X connect 14 1 9 0;
+#X connect 14 2 10 0;
+#X connect 14 3 11 0;
+#X connect 14 4 12 0;
+#X connect 15 0 8 1;
+#X connect 15 0 23 0;
+#X connect 15 0 24 0;
+#X connect 15 1 9 1;
+#X connect 15 1 25 0;
+#X connect 15 2 10 1;
+#X connect 15 2 39 0;
+#X connect 15 3 11 1;
+#X connect 15 3 26 0;
+#X connect 15 4 12 1;
+#X connect 15 4 40 0;
+#X connect 16 0 18 0;
+#X connect 17 0 21 0;
+#X connect 18 0 57 0;
+#X connect 19 0 57 0;
+#X connect 20 0 57 0;
+#X connect 21 0 29 0;
+#X connect 22 0 14 0;
+#X connect 22 1 7 0;
+#X connect 23 0 5 0;
+#X connect 24 0 38 0;
+#X connect 25 0 38 0;
+#X connect 26 0 38 0;
+#X connect 29 0 30 0;
+#X connect 30 0 57 0;
+#X connect 31 0 29 1;
+#X connect 31 0 32 0;
+#X connect 33 0 27 0;
+#X connect 33 1 27 1;
+#X connect 34 0 33 0;
+#X connect 35 0 33 0;
+#X connect 36 0 33 0;
+#X connect 37 0 36 0;
+#X connect 37 0 34 0;
+#X connect 37 0 35 0;
+#X connect 37 0 51 0;
+#X connect 38 0 33 0;
+#X connect 39 0 38 0;
+#X connect 40 0 38 0;
+#X connect 41 0 42 0;
+#X connect 42 0 50 0;
+#X connect 43 0 31 0;
+#X connect 44 0 45 0;
+#X connect 44 0 49 0;
+#X connect 45 0 44 1;
+#X connect 46 0 47 0;
+#X connect 49 0 46 0;
+#X connect 50 0 21 0;
+#X connect 50 1 44 0;
+#X connect 52 0 53 0;
+#X connect 53 0 57 0;
+#X connect 54 0 52 0;
+#X connect 55 0 57 0;
+#X connect 57 0 0 0;
+#X connect 57 0 5 1;
+#X connect 57 0 22 0;
+#X connect 57 0 52 1;
+#X connect 57 0 16 0;
+#X connect 57 1 56 0;