aboutsummaryrefslogtreecommitdiff
path: root/patches/organist.pd
diff options
context:
space:
mode:
Diffstat (limited to 'patches/organist.pd')
-rwxr-xr-xpatches/organist.pd322
1 files changed, 322 insertions, 0 deletions
diff --git a/patches/organist.pd b/patches/organist.pd
new file mode 100755
index 0000000..3353716
--- /dev/null
+++ b/patches/organist.pd
@@ -0,0 +1,322 @@
+#N canvas 14 34 935 707 12;
+#X symbolatom 731 341 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 762 56 pd readme;
+#X obj 121 329 harmonizer;
+#X msg 44 298 current \$1;
+#X msg 158 283 target \$1;
+#X obj 44 274 symbol;
+#X obj 44 254 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 245 347 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 718 428 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 466 316 fileIO 0;
+#X obj 143 225 outlet;
+#X msg 175 135 init 1;
+#X msg 115 77 write strani;
+#X msg 145 105 read strani;
+#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 49 348 bang;
+#X obj 63 111 f 1;
+#X msg 59 135 next \$1;
+#X obj 48 70 vsl 15 30 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1
+-1 1547 1;
+#X floatatom 13 112 5 0 0 0 - - -;
+#X obj 178 571 csoundapi~ bay.orc;
+#X msg 463 545 event i 10 0 17000 10 30;
+#X msg 463 568 event i 30 0 17000 2 30;
+#X msg 464 521 event i 25 0 17000 0.98 0.8 20000;
+#X obj 466 497 loadbang;
+#X obj 13 32 r novelty;
+#X obj 462 63 t b b;
+#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 text 529 392 this transposes of a + minor 3rd;
+#X obj 458 361 loadbang;
+#X msg 459 386 3;
+#X symbolatom 575 339 18 0 0 2 curr_chord - -;
+#X obj 42 218 symbol;
+#X obj 42 194 t s b;
+#X obj 29 606 outlet~;
+#X obj 106 609 outlet~;
+#X obj 578 358 outlet;
+#X obj 733 360 outlet;
+#N canvas 0 0 812 538 prepare_voice 0;
+#X obj 48 57 inlet;
+#X obj 392 55 inlet;
+#X obj 46 422 outlet;
+#X obj 52 95 + 0;
+#X obj 49 184 mtof;
+#X obj 52 129 t f b;
+#X obj 50 154 int 60;
+#X text 399 138 this adds a 1 chord delay;
+#X obj 115 55 inlet;
+#X obj 113 420 outlet;
+#X obj 119 93 + 0;
+#X obj 116 179 mtof;
+#X obj 119 127 t f b;
+#X obj 117 152 int 60;
+#X obj 176 52 inlet;
+#X obj 174 417 outlet;
+#X obj 180 90 + 0;
+#X obj 177 179 mtof;
+#X obj 180 124 t f b;
+#X obj 178 149 int 60;
+#X obj 242 54 inlet;
+#X obj 240 419 outlet;
+#X obj 246 92 + 0;
+#X obj 243 181 mtof;
+#X obj 246 126 t f b;
+#X obj 244 151 int 60;
+#X obj 307 54 inlet;
+#X obj 305 419 outlet;
+#X obj 311 92 + 0;
+#X obj 308 181 mtof;
+#X obj 311 126 t f b;
+#X obj 309 151 int 60;
+#X text 383 38 semitones;
+#X obj 47 313 spigot;
+#X obj 505 268 loadbang;
+#X msg 506 291 1;
+#X obj 63 290 r v1;
+#X obj 119 313 spigot;
+#X obj 180 314 spigot;
+#X obj 247 313 spigot;
+#X obj 312 313 spigot;
+#X obj 135 290 r v2;
+#X obj 196 291 r v3;
+#X obj 263 291 r v4;
+#X obj 328 290 r v5;
+#X connect 0 0 3 0;
+#X connect 1 0 3 1;
+#X connect 1 0 28 1;
+#X connect 1 0 22 1;
+#X connect 1 0 10 1;
+#X connect 1 0 16 1;
+#X connect 3 0 5 0;
+#X connect 4 0 33 0;
+#X connect 5 0 6 1;
+#X connect 5 1 6 0;
+#X connect 6 0 4 0;
+#X connect 8 0 10 0;
+#X connect 10 0 12 0;
+#X connect 11 0 37 0;
+#X connect 12 0 13 1;
+#X connect 12 1 13 0;
+#X connect 13 0 11 0;
+#X connect 14 0 16 0;
+#X connect 16 0 18 0;
+#X connect 17 0 38 0;
+#X connect 18 0 19 1;
+#X connect 18 1 19 0;
+#X connect 19 0 17 0;
+#X connect 20 0 22 0;
+#X connect 22 0 24 0;
+#X connect 23 0 39 0;
+#X connect 24 0 25 1;
+#X connect 24 1 25 0;
+#X connect 25 0 23 0;
+#X connect 26 0 28 0;
+#X connect 28 0 30 0;
+#X connect 29 0 40 0;
+#X connect 30 0 31 1;
+#X connect 30 1 31 0;
+#X connect 31 0 29 0;
+#X connect 33 0 2 0;
+#X connect 34 0 35 0;
+#X connect 35 0 33 1;
+#X connect 35 0 37 1;
+#X connect 35 0 38 1;
+#X connect 35 0 39 1;
+#X connect 35 0 40 1;
+#X connect 36 0 33 1;
+#X connect 37 0 9 0;
+#X connect 38 0 15 0;
+#X connect 39 0 21 0;
+#X connect 40 0 27 0;
+#X connect 41 0 37 1;
+#X connect 42 0 38 1;
+#X connect 43 0 39 1;
+#X connect 44 0 40 1;
+#X restore 237 387 pd prepare_voice;
+#X obj 45 415 tgl 20 0 v1 empty toggle_v1 0 -6 0 8 -262144 -1 -1 1
+1;
+#X obj 44 446 tgl 20 0 v2 empty toggle_v2 0 -6 0 8 -262144 -1 -1 1
+1;
+#X obj 43 476 tgl 20 0 v3 empty toggle_v3 0 -6 0 8 -262144 -1 -1 1
+1;
+#X obj 43 507 tgl 20 0 v4 empty toggle_v4 0 -6 0 8 -262144 -1 -1 1
+1;
+#X obj 40 537 tgl 20 0 v5 empty toggle_v5 0 -6 0 8 -262144 -1 -1 1
+1;
+#X obj 7 376 loadbang;
+#X msg 8 399 1;
+#X obj 83 169 chords_memory strani;
+#X obj 595 20 inlet;
+#X obj 595 43 bang;
+#X obj 596 64 int 0;
+#X obj 647 65 + 1;
+#X obj 598 86 % 2;
+#X obj 462 40 sel 0;
+#X obj 326 431 r msec-beat;
+#X obj 326 474 / 1000;
+#X obj 326 452 * 32;
+#X obj 327 495 + 2;
+#X obj 174 499 pack f f f;
+#X obj 429 456 r velocity;
+#X floatatom 417 491 5 0 0 0 - - -;
+#X msg 171 522 event i 9 0 \$2 \$1 \$3 0.5;
+#X obj 27 585 *~ 0.9;
+#X obj 105 587 *~ 0.9;
+#X connect 2 0 15 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 50 0;
+#X connect 15 1 9 1;
+#X connect 15 1 50 1;
+#X connect 15 2 10 1;
+#X connect 15 2 50 2;
+#X connect 15 3 11 1;
+#X connect 15 3 50 3;
+#X connect 15 4 12 1;
+#X connect 15 4 50 4;
+#X connect 16 0 18 0;
+#X connect 17 0 21 0;
+#X connect 18 0 58 0;
+#X connect 19 0 58 0;
+#X connect 20 0 58 0;
+#X connect 21 0 24 0;
+#X connect 22 0 14 0;
+#X connect 22 1 7 0;
+#X connect 23 0 5 0;
+#X connect 24 0 25 0;
+#X connect 25 0 58 0;
+#X connect 26 0 24 1;
+#X connect 26 0 27 0;
+#X connect 28 0 73 0;
+#X connect 28 1 74 0;
+#X connect 29 0 28 0;
+#X connect 30 0 28 0;
+#X connect 31 0 28 0;
+#X connect 32 0 31 0;
+#X connect 32 0 29 0;
+#X connect 32 0 30 0;
+#X connect 33 0 26 0;
+#X connect 34 0 21 0;
+#X connect 35 0 36 0;
+#X connect 36 0 58 0;
+#X connect 37 0 35 0;
+#X connect 38 0 58 0;
+#X connect 42 0 50 5;
+#X connect 44 0 43 0;
+#X connect 44 0 48 0;
+#X connect 45 0 44 1;
+#X connect 45 1 44 0;
+#X connect 50 0 69 0;
+#X connect 50 1 69 0;
+#X connect 50 2 69 0;
+#X connect 50 3 69 0;
+#X connect 50 4 69 0;
+#X connect 56 0 57 0;
+#X connect 57 0 51 0;
+#X connect 57 0 52 0;
+#X connect 57 0 53 0;
+#X connect 57 0 54 0;
+#X connect 57 0 55 0;
+#X connect 58 0 0 0;
+#X connect 58 0 5 1;
+#X connect 58 0 22 0;
+#X connect 58 0 35 1;
+#X connect 58 0 16 0;
+#X connect 58 0 45 0;
+#X connect 58 0 49 0;
+#X connect 58 1 39 0;
+#X connect 59 0 60 0;
+#X connect 60 0 61 0;
+#X connect 61 0 62 0;
+#X connect 61 0 63 0;
+#X connect 62 0 61 1;
+#X connect 63 0 64 0;
+#X connect 64 0 34 0;
+#X connect 65 0 67 0;
+#X connect 66 0 68 0;
+#X connect 67 0 66 0;
+#X connect 68 0 69 1;
+#X connect 69 0 72 0;
+#X connect 70 0 69 2;
+#X connect 70 0 71 0;
+#X connect 72 0 28 0;
+#X connect 73 0 46 0;
+#X connect 74 0 47 0;