[PD] matrix mixer abstraction

Frank Barknecht fbar at footils.org
Fri Apr 9 15:53:24 CEST 2004


Hallo,
Tim Blechmann hat gesagt: // Tim Blechmann wrote:

> i'm about to build some kind of matrix mixer abstraction, and i'm
> curious if someone created something like that ... i had a look at the
> console abstraction, but that's more a mixing board than a matrix mixer

Attached are two abstractions that could servee as early building
blocks: rrad.ms shall evolve into a mixer strip, rrad.split~ is simply
a signal splitter. The thing to note in rrad.split~ is the use of
Zexy's matrix~ to do the mixing. It is used as simple one-dimensional
splitter bay, but could of course be evolved to be a real matrix
mixer. rrad.ms is not really finished, more a case study. 

(Memento is used in both, but it works without it as well, you'll just
miss the saving and OSC support.)

Ciao
-- 
 Frank Barknecht                               _ ______footils.org__
-------------- next part --------------
#N canvas 499 433 106 229 10;
#X obj 2 19 cnv 15 100 200 empty \$0-background-cnv empty 20 12 1 14
-225271 -66577 0;
#X obj 303 -4 inlet OSC;
#N canvas 0 0 981 424 saves 0;
#X obj 45 160 originator \$1 \$0;
#X obj 152 132 inlet OSC;
#X obj 507 86 r \$0-s1;
#X obj 507 110 commun /s1 \$0;
#X obj 47 55 r \$0-substate;
#X obj 15 13 inlet substate;
#X obj 15 35 route substate;
#X obj 159 55 r \$0-copy;
#X msg 159 76 copy;
#X obj 243 50 r \$0-paste;
#X msg 241 71 paste;
#X text 154 15 This is the originator \, including some ready to use
standard functionality.;
#X text 507 56 Put your commun sends here \, if you like.;
#X msg 15 91 setsub \$1;
#X msg 295 127 svdir \$1;
#X obj 296 82 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 296 106 savepanel;
#X msg 108 214 svdir /tmp/svdir.dat;
#X msg 78 241 lddir /tmp/svdir.dat;
#X obj 152 189 outlet OSC;
#X obj 506 184 commun /throw \$0;
#X obj 506 233 s \$0-throw-r;
#X obj 506 159 r \$0-throw-s;
#X obj 506 210 symbol;
#X obj 507 135 s \$0-s1;
#X obj 376 93 loadbang;
#X msg 376 122 1;
#X obj 376 145 s \$0-s2;
#X obj 638 84 r \$0-s2;
#X obj 742 109 commun /s3 \$0;
#X obj 849 109 commun /s4 \$0;
#X obj 639 107 commun /s2 \$0;
#X obj 639 130 s \$0-s2;
#X obj 849 85 r \$0-s4;
#X obj 850 131 s \$0-s4;
#X obj 742 85 r \$0-s3;
#X obj 742 132 s \$0-s3;
#X obj 428 183 loadbang;
#X obj 428 215 symbol \$2;
#X obj 240 266 OSCroute \$1;
#X obj 203 333 s \$0-s1;
#X obj 260 335 s \$0-s2;
#X obj 406 338 s \$0-s4;
#X obj 329 334 s \$0-s3;
#X obj 244 290 route 7 13 12 10;
#X obj 415 274 loadbang;
#X msg 412 296 64;
#X connect 0 2 19 0;
#X connect 1 0 0 1;
#X connect 1 0 39 0;
#X connect 2 0 3 0;
#X connect 3 0 24 0;
#X connect 4 0 13 0;
#X connect 5 0 6 0;
#X connect 6 0 13 0;
#X connect 6 1 0 0;
#X connect 7 0 8 0;
#X connect 8 0 0 0;
#X connect 9 0 10 0;
#X connect 10 0 0 0;
#X connect 13 0 0 0;
#X connect 14 0 0 0;
#X connect 15 0 16 0;
#X connect 16 0 14 0;
#X connect 17 0 0 0;
#X connect 18 0 0 0;
#X connect 20 0 23 0;
#X connect 22 0 20 0;
#X connect 23 0 21 0;
#X connect 25 0 26 0;
#X connect 26 0 27 0;
#X connect 28 0 31 0;
#X connect 29 0 36 0;
#X connect 30 0 34 0;
#X connect 31 0 32 0;
#X connect 33 0 30 0;
#X connect 35 0 29 0;
#X connect 37 0 38 0;
#X connect 39 0 44 0;
#X connect 44 0 40 0;
#X connect 44 1 41 0;
#X connect 44 2 43 0;
#X connect 44 3 42 0;
#X connect 45 0 46 0;
#X connect 46 0 42 0;
#X restore 241 -5 pd saves;
#N canvas 569 61 450 300 cnv.ctl 0;
#X obj 90 188 s \$0-background-cnv;
#X floatatom 108 59 5 100 1000 0 width - -;
#X floatatom 112 83 4 50 500 0 height - -;
#X obj 92 132 pack 0 0;
#X msg 92 159 vis_size \$1 \$2;
#X obj 110 106 t b f;
#X connect 1 0 3 0;
#X connect 2 0 5 0;
#X connect 3 0 4 0;
#X connect 4 0 0 0;
#X connect 5 0 3 0;
#X connect 5 1 3 1;
#X restore 166 -5 pd cnv.ctl;
#X obj 37 50 hsl 48 15 0 127 0 0 \$0-s2 \$0-s2 s2 -2 -6 0 8 -228992
-1 -1 0 1;
#X obj 12 188 bng 15 250 50 0 \$0-copy empty copy 0 -6 0 8 -262144
-1 -1;
#X obj 40 188 bng 15 250 50 0 \$0-paste empty paste 0 -6 0 8 -262144
-1 -1;
#X text 26 0 look! ==>;
#X obj 241 16 outlet OSC;
#X obj 120 -5 inlet~;
#X obj 123 135 outlet~;
#X symbolatom 11 128 10 0 0 0 - #0-throw-r #0-throw-s;
#N canvas 0 0 450 300 routing 0;
#X obj 86 50 inlet~;
#X obj 102 269 outlet~;
#X obj 213 82 line~;
#X obj 177 99 *~;
#X msg 213 58 \$1 5;
#X obj 162 222 line~;
#X obj 100 227 *~;
#X msg 162 198 \$1 5;
#X msg 297 89 set \$1;
#X obj 330 66 r \$0-throw-r;
#X obj 294 54 r \$0-throw-s;
#X obj 177 124 throw~ \$1;
#X obj 215 40 * 0.00781;
#X obj 162 177 * 0.00781;
#X obj 161 156 r \$0-s1;
#X obj 217 20 r \$0-s2;
#X obj 216 207 r \$0-s4;
#X obj 159 271 outlet~;
#X obj 221 228 * 0.00781;
#X obj 104 248 gpans~;
#X connect 0 0 3 0;
#X connect 0 0 6 0;
#X connect 2 0 3 1;
#X connect 3 0 11 0;
#X connect 4 0 2 0;
#X connect 5 0 6 1;
#X connect 6 0 19 0;
#X connect 6 0 19 1;
#X connect 7 0 5 0;
#X connect 9 0 8 0;
#X connect 10 0 8 0;
#X connect 12 0 4 0;
#X connect 13 0 7 0;
#X connect 14 0 13 0;
#X connect 15 0 12 0;
#X connect 16 0 18 0;
#X connect 18 0 19 2;
#X connect 19 0 1 0;
#X connect 19 1 17 0;
#X restore 123 29 pd routing;
#X obj 11 52 vsl 15 64 0 127 0 0 \$0-s1 \$0-s1 s1 0 -8 0 8 -262131
-1 -1 5900 1;
#X obj 37 77 hsl 48 15 0 127 0 0 \$0-s3 \$0-s3 s3 -2 -6 0 8 -228992
-1 -1 0 1;
#X obj 37 104 hsl 48 15 0 127 0 0 \$0-s4 \$0-s4 s4 -2 -6 0 8 -228992
-1 -1 2300 1;
#X obj 12 160 nbx 3 12 0 1e+37 0 0 \$0-substate \$0-substate-r preset
0 -6 0 8 -261681 -1 -1 0 256;
#X obj 181 135 outlet~;
#X connect 1 0 2 1;
#X connect 2 0 8 0;
#X connect 9 0 12 0;
#X connect 12 0 10 0;
#X connect 12 1 17 0;
#X coords 0 0 1 1 102 220 1;
-------------- next part --------------
#N canvas 500 433 230 75 10;
#X obj 2 14 cnv 15 225 55 empty \$0-background-cnv empty 20 12 1 14
-261681 -66577 0;
#X obj 695 2 inlet OSC;
#N canvas 0 0 981 424 saves 0;
#X obj 45 160 originator \$1 \$0;
#X obj 152 132 inlet OSC;
#X obj 507 86 r \$0-s1;
#X obj 507 110 commun /s1 \$0;
#X obj 606 86 r \$0-s2;
#X obj 606 110 commun /s2 \$0;
#X obj 47 55 r \$0-substate;
#X obj 15 13 inlet substate;
#X obj 15 35 route substate;
#X obj 159 55 r \$0-copy;
#X msg 159 76 copy;
#X obj 243 50 r \$0-paste;
#X msg 241 71 paste;
#X text 154 15 This is the originator \, including some ready to use
standard functionality.;
#X text 507 56 Put your commun sends here \, if you like.;
#X msg 15 91 setsub \$1;
#X msg 249 184 svdir \$1;
#X obj 250 139 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 250 163 savepanel;
#X msg 108 214 svdir /tmp/svdir.dat;
#X msg 78 241 lddir /tmp/svdir.dat;
#X obj 152 189 outlet OSC;
#X obj 606 135 s \$0-s2;
#X obj 507 135 s \$0-s1;
#X obj 707 85 r \$0-s3;
#X obj 707 109 commun /s3 \$0;
#X obj 707 134 s \$0-s3;
#X obj 814 82 r \$0-s4;
#X obj 814 106 commun /s4 \$0;
#X obj 814 131 s \$0-s4;
#X obj 509 168 r \$0-s5;
#X obj 509 217 s \$0-s5;
#X obj 509 192 commun /s5 \$0;
#X obj 617 165 r \$0-s6;
#X obj 617 189 commun /s6 \$0;
#X obj 617 214 s \$0-s6;
#X obj 552 294 commun /fade \$0;
#X obj 554 273 r \$0-fade;
#X obj 551 317 s \$0-fade;
#X obj 483 276 loadbang;
#X msg 483 299 100;
#X connect 0 2 21 0;
#X connect 1 0 0 1;
#X connect 2 0 3 0;
#X connect 3 0 23 0;
#X connect 4 0 5 0;
#X connect 5 0 22 0;
#X connect 6 0 15 0;
#X connect 7 0 8 0;
#X connect 8 0 15 0;
#X connect 8 1 0 0;
#X connect 9 0 10 0;
#X connect 10 0 0 0;
#X connect 11 0 12 0;
#X connect 12 0 0 0;
#X connect 15 0 0 0;
#X connect 16 0 0 0;
#X connect 17 0 18 0;
#X connect 18 0 16 0;
#X connect 19 0 0 0;
#X connect 20 0 0 0;
#X connect 24 0 25 0;
#X connect 25 0 26 0;
#X connect 27 0 28 0;
#X connect 28 0 29 0;
#X connect 30 0 32 0;
#X connect 32 0 31 0;
#X connect 33 0 34 0;
#X connect 34 0 35 0;
#X connect 36 0 38 0;
#X connect 37 0 36 0;
#X connect 39 0 40 0;
#X connect 40 0 38 0;
#X restore 654 34 pd saves;
#N canvas 569 61 450 300 cnv.ctl 0;
#X obj 90 188 s \$0-background-cnv;
#X floatatom 108 59 5 100 1000 0 width - -;
#X floatatom 112 83 4 50 500 0 height - -;
#X obj 92 132 pack 0 0;
#X msg 92 159 vis_size \$1 \$2;
#X obj 110 106 t b f;
#X connect 1 0 3 0;
#X connect 2 0 5 0;
#X connect 3 0 4 0;
#X connect 4 0 0 0;
#X connect 5 0 3 0;
#X connect 5 1 3 1;
#X restore 343 1 pd cnv.ctl;
#X text 184 2 look! ==>;
#X obj 654 59 outlet OSC;
#X obj 292 2 inlet~;
#N canvas 731 258 450 300 matrix 0;
#X obj 41 248 outlet~;
#X obj 99 249 outlet~;
#X obj 62 12 inlet~;
#X obj 103 119 r \$0-matrix;
#X obj 123 169 s \$0-matrix-out;
#N canvas 0 0 1131 346 set_elements 0;
#X msg 102 137 element 1 1 \$1;
#X msg 265 148 element 1 2 \$1;
#X obj 236 116 t b f;
#X obj 65 118 t b f;
#X obj 67 88 * 0.00781;
#X obj 236 91 * 0.00781;
#X obj 62 62 r \$0-s1;
#X obj 235 67 r \$0-s2;
#X obj 66 161 s \$0-matrix;
#X obj 223 181 s \$0-matrix;
#X obj 418 119 t b f;
#X obj 418 94 * 0.00781;
#X obj 405 184 s \$0-matrix;
#X obj 593 128 t b f;
#X obj 593 103 * 0.00781;
#X obj 580 193 s \$0-matrix;
#X obj 758 134 t b f;
#X obj 758 109 * 0.00781;
#X obj 745 199 s \$0-matrix;
#X msg 446 151 element 1 3 \$1;
#X msg 622 160 element 1 4 \$1;
#X msg 787 166 element 1 5 \$1;
#X obj 912 135 t b f;
#X obj 912 110 * 0.00781;
#X obj 899 200 s \$0-matrix;
#X msg 941 166 element 1 6 \$1;
#X obj 911 86 r \$0-s6;
#X obj 757 85 r \$0-s5;
#X obj 592 79 r \$0-s4;
#X obj 417 70 r \$0-s3;
#X connect 0 0 8 0;
#X connect 1 0 9 0;
#X connect 2 0 9 0;
#X connect 2 1 1 0;
#X connect 3 0 8 0;
#X connect 3 1 0 0;
#X connect 4 0 3 0;
#X connect 5 0 2 0;
#X connect 6 0 4 0;
#X connect 7 0 5 0;
#X connect 10 0 12 0;
#X connect 10 1 19 0;
#X connect 11 0 10 0;
#X connect 13 0 15 0;
#X connect 13 1 20 0;
#X connect 14 0 13 0;
#X connect 16 0 18 0;
#X connect 16 1 21 0;
#X connect 17 0 16 0;
#X connect 19 0 12 0;
#X connect 20 0 15 0;
#X connect 21 0 18 0;
#X connect 22 0 24 0;
#X connect 22 1 25 0;
#X connect 23 0 22 0;
#X connect 25 0 24 0;
#X connect 26 0 23 0;
#X connect 27 0 17 0;
#X connect 28 0 14 0;
#X connect 29 0 11 0;
#X restore 144 21 pd set_elements;
#X obj 63 209 matrix~ 1 6 100;
#X obj 103 147 matrix 1 6;
#X obj 158 249 outlet~;
#X obj 216 250 outlet~;
#X obj 278 252 outlet~;
#X obj 336 253 outlet~;
#X obj 193 200 r \$0-fade;
#X connect 2 0 6 0;
#X connect 3 0 7 0;
#X connect 6 0 0 0;
#X connect 6 1 1 0;
#X connect 6 2 8 0;
#X connect 6 3 9 0;
#X connect 6 4 10 0;
#X connect 6 5 11 0;
#X connect 7 0 4 0;
#X connect 7 0 6 1;
#X connect 12 0 6 2;
#X restore 337 26 pd matrix;
#X obj 276 60 outlet~;
#X obj 334 61 outlet~;
#X obj 16 29 vsl 15 32 0 127 0 0 \$0-s1 \$0-s1 s1 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 44 29 vsl 15 32 0 127 0 0 \$0-s2 \$0-s2 s2 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 73 29 vsl 15 32 0 127 0 0 \$0-s3 \$0-s3 s3 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 102 29 vsl 15 32 0 127 0 0 \$0-s4 \$0-s4 s4 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 133 29 vsl 15 32 0 127 0 0 \$0-s5 \$0-s5 s5 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 162 29 vsl 15 32 0 127 0 0 \$0-s6 \$0-s6 s6 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 405 63 outlet~;
#X obj 463 64 outlet~;
#X obj 525 66 outlet~;
#X obj 583 67 outlet~;
#X obj 188 40 nbx 3 12 0 1e+37 0 0 \$0-fade \$0-fade fade 0 -6 0 8
-233017 -1 -1 0 256;
#X connect 1 0 2 1;
#X connect 2 0 5 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 7 1 9 0;
#X connect 7 2 16 0;
#X connect 7 3 17 0;
#X connect 7 4 18 0;
#X connect 7 5 19 0;
#X coords 0 0 1 1 227 70 1;


More information about the Pd-list mailing list