[PD] cellular automata

Chris McCormick chris at mccormick.cx
Thu Dec 21 05:19:06 CET 2006


Hi,

Sorry about the late reply!

On Mon, Dec 11, 2006 at 11:05:17PM -0500, patrick wrote:
> when i bang for generation i got:
> error: : no such object
> 
> can't use the find last error...

Yeah, I'm not sure what that is - might be a bug introduced when I
changed something else. But the abstraction seems to work for me - does
it work for you?

> the track is good! but was the link between the grid and the music?

Cheers!

In that track the CA is controlling:
1. The spectrum of the high hat sound.
2. The sum of the sines of the chord sound and their rhythm.
3. The 'solo' instrument that comes in (sinesum and rhythm).
4. The bassdrum rhythm.

It was a fun collaboration and the best sounding one out of three (the
other two sounded pretty awful). I've attached the patch, which requires
most of the abstractions in my collection to run.

Best,

Chris.

-------------------
chris at mccormick.cx
http://mccormick.cx
-------------- next part --------------
#N canvas 5 15 868 671 10;
#X obj 9 121 s-conway 8 8 sngen;
#X obj 724 8 s-metro time;
#N canvas 0 0 459 375 datastore 0;
#X obj 10 10 r SSSADDATA;
#X msg 10 30 \; SSSAD hat/volume 127 \; SSSAD hat/pan 61.9881 \; SSSAD
melody/volume 127 \; SSSAD melody/pan 61.9881 \; SSSAD bd/volume 127
\; SSSAD bd/pan 61.9881 \; SSSAD chang/volume 127 \; SSSAD chang/pan
61.9881 \; SSSAD sn2/volume 127 \; SSSAD sn2/pan 61.9881 \; SSSAD sn1/volume
127 \; SSSAD sn1/pan 61.9881 \; SSSAD melody/length 21.0256 \; SSSAD
melody/feedback 90.3313 \; SSSAD sdely/length 96.1773 \; SSSAD sdely/feedback
97.7698 \; SSSAD 1252/cutoff 67.7938 \; SSSAD 1252/resonance 44.329
\; SSSAD sndel/length 23.0414 \; SSSAD sndel/feedback 13.7281 \; SSSAD
bass/state 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 0 0 0 0 0 1 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 0 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 \; SSSAD bd-note 40 \; SSSAD bd-volume
26.2063 \; SSSAD bd-ring 84.6667 \; SSSAD beat/state 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 1 \; SSSAD r1/dry 16.127 \; SSSAD r1/wet 2.01587 \; SSSAD
r1/reverb 98.7778 \; SSSAD snack/state 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 0 0 0 0 0 0 0 0 0 0 0
0 0 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 0 \; SSSAD time/ticksperbeat
4 \; SSSAD time/bpm 140 \; SSSAD sngen/state 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 0 0 0 0 0 0 0 1
0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 1 0 0 \; SSSAD_ADMIN set \;;
#X connect 0 0 1 0;
#X restore 724 104 pd datastore;
#X obj 724 126 sssad/datastore;
#X obj 9 97 t b b;
#X obj 9 231 list split 8;
#X obj 9 375 phasor~ 110;
#X obj 100 327 mtof;
#X obj 9 397 *~ 1024;
#X obj 9 426 tabread4~ snshape;
#X msg 100 305 48;
#X obj 572 296 s-conway 12 12 snack;
#X obj 572 264 t b b;
#N canvas 66 84 848 601 resynth 0;
#N canvas 265 48 643 640 fft-analysis 0;
#X obj 15 164 *~;
#X obj 14 99 inlet~;
#X obj 15 218 rfft~;
#X obj 36 140 tabreceive~ \$0-hann;
#X obj 14 353 *~;
#X obj 56 353 *~;
#X text 221 141 window function as before.;
#X obj 76 196 tabreceive~ \$0-gain;
#X obj 77 225 *~;
#X obj 16 506 *~;
#X obj 37 481 tabreceive~ \$0-hann;
#X obj 77 283 /~ 768;
#X obj 78 251 *~;
#X obj 15 399 rifft~;
#X obj 16 566 outlet~;
#X obj 15 8 block~ 256 4;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 2 0 4 0;
#X connect 2 1 5 0;
#X connect 3 0 0 1;
#X connect 4 0 13 0;
#X connect 5 0 13 1;
#X connect 7 0 8 0;
#X connect 7 0 8 1;
#X connect 8 0 12 0;
#X connect 8 0 12 1;
#X connect 9 0 14 0;
#X connect 10 0 9 1;
#X connect 11 0 4 1;
#X connect 11 0 5 1;
#X connect 12 0 11 0;
#X connect 13 0 9 0;
#X restore 15 52 pd fft-analysis;
#N canvas 35 66 592 433 Hann-window 0;
#N canvas 0 0 450 300 graph1 0;
#X array \$0-hann 512 float 0;
#X coords 0 1 511 0 200 120 1;
#X restore 293 249 graph;
#X msg 171 263 0;
#X obj 65 312 osc~;
#X obj 65 264 samplerate~;
#X obj 65 335 *~ -0.5;
#X obj 65 358 +~ 0.5;
#X obj 57 383 tabwrite~ \$0-hann;
#X text 279 241 1;
#X text 272 359 0;
#X text 288 372 0;
#X obj 65 288 / 512;
#X obj 57 241 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 336 221 Hann window;
#X text 113 310 period 512;
#X text 90 215 recalculate Hann;
#X text 125 230 window table;
#X obj 57 146 loadbang;
#X msg 79 179 \; pd dsp 1;
#X text 40 27 The Hann window is now recomputed on 'loadbang' to make
the file smaller (it doesn't have to be saved with the array.);
#X text 474 375 511;
#X connect 1 0 2 1;
#X connect 2 0 4 0;
#X connect 3 0 10 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 10 0 2 0;
#X connect 11 0 3 0;
#X connect 11 0 1 0;
#X connect 11 0 6 0;
#X connect 16 0 11 0;
#X connect 16 0 17 0;
#X restore 115 23 pd Hann-window;
#X obj 15 21 noise~;
#X obj 314 11 inlet;
#X obj 15 238 outlet~;
#N canvas 0 0 450 300 graph5 0;
#X array \$0-gain 144 float 3;
#A 0 0 0 0 0 0 0 0 0 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 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 0 1
1 0 0 0 0 0 0 0 0 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 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0
0 0 0 0 0 0 1 1 1 1 0;
#X coords 0 1 144 -1 200 140 1;
#X restore 253 208 graph;
#X obj 314 86 list append;
#X obj 314 33 t b l;
#X obj 314 115 list trim;
#X obj 314 142 s \$0-gain;
#X msg 314 60 0;
#X obj 107 360 list split 1;
#X obj 107 308 until;
#X obj 107 332 list append;
#X obj 199 360 bang;
#X obj 137 421 + 1;
#X obj 107 421 0;
#X obj 107 385 t b f;
#X msg 151 286 0;
#X obj 91 444 f;
#X obj 93 264 t b b l b;
#X obj 91 488 select 3;
#X floatatom 91 467 5 0 0 0 - - -;
#X text 196 456 When there aren't many;
#X msg 91 511 \; sndel/length 72 \; sndel/feedback 72 \;;
#X obj 595 19 inlet;
#X obj 595 42 list split 25;
#X obj 638 65 list split 5;
#X obj 638 89 len;
#X floatatom 638 113 5 0 0 0 - - -;
#X obj 638 134 select 0;
#X msg 638 284 \; sndel/length 72 \;;
#X obj 689 159 * 36;
#X msg 689 183 \; sndel/length \$1 \;;
#X connect 0 0 4 0;
#X connect 2 0 0 0;
#X connect 3 0 7 0;
#X connect 3 0 20 0;
#X connect 6 0 8 0;
#X connect 7 0 10 0;
#X connect 7 1 6 1;
#X connect 8 0 9 0;
#X connect 10 0 6 0;
#X connect 11 0 17 0;
#X connect 11 1 13 1;
#X connect 11 2 14 0;
#X connect 12 0 13 0;
#X connect 13 0 11 0;
#X connect 14 0 12 1;
#X connect 15 0 16 1;
#X connect 16 0 15 0;
#X connect 16 0 19 1;
#X connect 17 0 16 0;
#X connect 17 1 15 1;
#X connect 18 0 16 1;
#X connect 19 0 22 0;
#X connect 20 0 19 0;
#X connect 20 1 12 0;
#X connect 20 2 13 1;
#X connect 20 3 18 0;
#X connect 21 0 24 0;
#X connect 22 0 21 0;
#X connect 25 0 26 0;
#X connect 26 1 27 0;
#X connect 27 0 28 0;
#X connect 28 0 29 0;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
#X connect 30 1 32 0;
#X connect 32 0 33 0;
#X restore 572 443 pd resynth;
#X obj 48 256 list split 8;
#X obj 132 426 tabread4~ bshape;
#X obj 100 376 phasor~ 110;
#X obj 100 398 *~ 1024;
#X obj 100 356 / 2;
#X obj 9 12 r time/tick;
#X obj 9 76 change;
#X obj 9 54 int;
#X obj 9 33 / 2;
#X obj 9 474 s-reverb~ r1;
#X obj 133 474 s-reverb~ r1;
#X obj 211 175 s-conway 16 3 beat;
#X obj 731 282 r time/tick;
#X obj 731 433 line~;
#X obj 572 474 *~;
#X obj 731 390 change;
#X obj 731 368 int;
#X obj 731 347 / 4;
#X obj 212 7 r time/tick;
#N canvas 150 10 486 672 bassdrum 0;
#X obj 84 567 outlet~;
#X obj 6 5 inlet;
#X obj 6 27 list split 16;
#X obj 231 99 mod 16;
#X obj 60 200 list split 1;
#X obj 60 117 until;
#X obj 60 155 list append;
#X obj 152 201 bang;
#X obj 60 136 t l b;
#X obj 60 76 t b l b;
#X obj 102 244 f;
#X obj 131 244 + 1;
#X msg 118 103 0;
#X obj 140 282 ==;
#X obj 140 304 select 1;
#X obj 84 348 f;
#X obj 231 24 inlet;
#X obj 84 370 select 1;
#X obj 85 451 s-bassdrum~ bd;
#X msg 84 395 \; bd-shot bang \;;
#X msg 293 515 \; bd-note \$1 \;;
#X msg 293 456 45;
#X msg 335 456 40;
#X msg 373 456 33;
#X obj 338 163 list split 1;
#X obj 338 111 until;
#X obj 338 135 list append;
#X obj 430 163 bang;
#X obj 368 224 + 1;
#X obj 338 224 0;
#X obj 338 188 t b f;
#X msg 382 89 0;
#X obj 322 247 f;
#X obj 324 67 t b b l b;
#X obj 306 269 f;
#X obj 236 140 select 0;
#X floatatom 306 316 5 0 0 0 - - -;
#X obj 211 349 select 0 1 2 3 4 5 6;
#X obj 377 365 outlet;
#X obj 377 313 != 2;
#X obj 377 341 * 0.25;
#X connect 1 0 2 0;
#X connect 2 0 33 0;
#X connect 2 1 9 0;
#X connect 3 0 13 1;
#X connect 3 0 35 0;
#X connect 4 0 15 1;
#X connect 4 1 6 1;
#X connect 4 2 7 0;
#X connect 5 0 8 0;
#X connect 6 0 4 0;
#X connect 7 0 5 1;
#X connect 8 0 6 0;
#X connect 8 1 10 0;
#X connect 9 0 5 0;
#X connect 9 1 6 1;
#X connect 9 2 12 0;
#X connect 10 0 11 0;
#X connect 10 0 13 0;
#X connect 11 0 10 1;
#X connect 12 0 10 1;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 17 0;
#X connect 16 0 3 0;
#X connect 17 0 19 0;
#X connect 18 0 0 0;
#X connect 21 0 20 0;
#X connect 22 0 20 0;
#X connect 23 0 20 0;
#X connect 24 0 30 0;
#X connect 24 1 26 1;
#X connect 24 2 27 0;
#X connect 25 0 26 0;
#X connect 26 0 24 0;
#X connect 27 0 25 1;
#X connect 28 0 29 1;
#X connect 29 0 28 0;
#X connect 29 0 32 1;
#X connect 30 0 29 0;
#X connect 30 1 28 1;
#X connect 31 0 29 1;
#X connect 32 0 34 1;
#X connect 33 0 32 0;
#X connect 33 1 25 0;
#X connect 33 2 26 1;
#X connect 33 3 31 0;
#X connect 34 0 36 0;
#X connect 34 0 37 0;
#X connect 34 0 39 0;
#X connect 35 0 34 0;
#X connect 37 0 21 0;
#X connect 37 1 21 0;
#X connect 37 2 21 0;
#X connect 37 3 21 0;
#X connect 37 4 22 0;
#X connect 37 5 22 0;
#X connect 37 6 22 0;
#X connect 37 7 23 0;
#X connect 39 0 40 0;
#X connect 40 0 38 0;
#X restore 211 231 pd bassdrum;
#X text 561 77 Click here to start ->;
#X text 507 166 Click here to load the song ->;
#X obj 212 139 t b b f;
#X obj 212 116 change;
#X obj 212 94 int;
#X obj 212 73 / 2;
#X obj 212 292 lop~ 110;
#X obj 286 292 hip~ 110;
#X obj 260 327 *~;
#X obj 306 327 *~;
#X obj 395 246 s-conway 5 16 bass;
#X obj 396 221 t b b;
#X obj 396 130 r time/beat;
#N canvas 47 8 460 669 bass 0;
#X obj 6 4 inlet;
#X obj 6 644 outlet~;
#X obj 6 32 list split 5;
#X obj 6 568 phasor~ 55;
#X obj 6 544 mtof;
#X obj 6 502 loadbang;
#X obj 6 589 *~ 1024;
#X obj 6 611 tabread4~ bassshape;
#X obj 6 339 sines bass;
#X msg 6 523 60;
#X obj 178 585 phasor~ 440;
#X obj 177 642 outlet~;
#X obj 178 614 *~ 0.5;
#X obj 120 65 len;
#X obj 120 108 *;
#X obj 61 184 delay;
#X msg 61 208 1;
#X msg 25 208 0;
#X obj 25 242 outlet;
#X obj 136 86 r time/beatsize;
#X msg 179 510 84 \, 72 \$1;
#X obj 178 562 mtof~;
#X obj 179 535 line~;
#X obj 302 534 line;
#X floatatom 310 567 5 0 0 0 - - -;
#X connect 0 0 2 0;
#X connect 2 0 8 0;
#X connect 2 0 13 0;
#X connect 2 0 17 0;
#X connect 3 0 6 0;
#X connect 4 0 3 0;
#X connect 5 0 9 0;
#X connect 6 0 7 0;
#X connect 7 0 1 0;
#X connect 9 0 4 0;
#X connect 10 0 12 0;
#X connect 12 0 11 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 14 0 20 0;
#X connect 15 0 16 0;
#X connect 16 0 18 0;
#X connect 17 0 18 0;
#X connect 19 0 14 1;
#X connect 20 0 22 0;
#X connect 20 0 23 0;
#X connect 21 0 10 0;
#X connect 22 0 21 0;
#X connect 23 0 24 0;
#X restore 395 433 pd bass;
#X obj 105 283 loadbang;
#X obj 212 47 spigot;
#X obj 348 10 r time/beat;
#X msg 348 54 \; time/startstop 0 \;;
#X obj 9 302 sines sn;
#X obj 48 280 sines b;
#X obj 572 201 r time/beat;
#X obj 731 326 spigot;
#X obj 572 244 spigot;
#X obj 249 27 > 512;
#X obj 9 449 *~ 0.1;
#X obj 133 449 *~ 0.1;
#X obj 348 33 select 512;
#X obj 571 497 s-delayunit~ sndel;
#X msg 731 411 0.5 \, 0 20;
#N canvas 178 128 493 449 chang 0;
#X obj 35 89 mod 4;
#X obj 35 113 select 3;
#X obj 35 177 s-snare~ sd;
#X obj 35 265 s-delayunit~ sdely;
#X msg 35 135 96 12 \;;
#X obj 100 402 hip~ 4000;
#X obj 19 401 lop~ 4000;
#X obj 35 355 *~ 0.1;
#X obj 35 66 inlet;
#X obj 20 425 outlet~;
#X obj 100 425 outlet~;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 2 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 2 0;
#X connect 5 0 10 0;
#X connect 6 0 9 0;
#X connect 7 0 5 0;
#X connect 7 0 6 0;
#X connect 8 0 0 0;
#X restore 272 552 pd chang;
#X text 287 531 snare in here;
#X obj 609 224 > 32;
#X obj 768 306 > 128;
#X obj 396 455 *~;
#N canvas 0 0 450 300 post 0;
#X obj 73 137 *~ 0.1;
#X obj 72 6 inlet~;
#X obj 73 48 s-delayunit~ melody;
#X obj 143 172 lop~ 2000;
#X obj 73 173 hip~ 2000;
#X obj 73 204 outlet~;
#X obj 144 204 outlet~;
#X connect 0 0 3 0;
#X connect 0 0 4 0;
#X connect 1 0 2 0;
#X connect 2 0 0 0;
#X connect 3 0 6 0;
#X connect 4 0 5 0;
#X restore 396 485 pd post;
#X obj 396 175 spigot 0;
#X obj 396 199 spigot 1;
#X obj 272 466 r time/beat;
#X obj 272 511 spigot;
#X obj 309 491 > 192;
#X obj 447 153 > 320;
#X text 511 23 Load first \, then start.;
#X obj 716 193 s-recorder~;
#X obj 12 584 s-ezdac~ sn1;
#X obj 138 585 s-ezdac~ sn2;
#X obj 272 576 s-ezdac~ chang;
#X obj 261 352 s-ezdac~ bd;
#X obj 397 511 s-ezdac~ melody;
#X obj 571 585 s-ezdac~ hat;
#X connect 0 0 5 0;
#X connect 4 0 0 1;
#X connect 4 1 0 0;
#X connect 5 0 52 0;
#X connect 5 1 14 0;
#X connect 6 0 8 0;
#X connect 7 0 6 0;
#X connect 7 0 18 0;
#X connect 8 0 9 0;
#X connect 9 0 58 0;
#X connect 10 0 7 0;
#X connect 11 0 13 0;
#X connect 12 0 11 1;
#X connect 12 1 11 0;
#X connect 13 0 28 0;
#X connect 14 0 53 0;
#X connect 15 0 59 0;
#X connect 16 0 17 0;
#X connect 17 0 15 0;
#X connect 18 0 16 0;
#X connect 19 0 22 0;
#X connect 20 0 4 0;
#X connect 21 0 20 0;
#X connect 22 0 21 0;
#X connect 23 0 77 0;
#X connect 23 1 77 1;
#X connect 24 0 78 0;
#X connect 24 1 78 1;
#X connect 25 0 33 0;
#X connect 26 0 55 0;
#X connect 26 0 66 0;
#X connect 27 0 28 1;
#X connect 28 0 61 0;
#X connect 29 0 62 0;
#X connect 30 0 29 0;
#X connect 31 0 30 0;
#X connect 32 0 49 0;
#X connect 32 0 57 0;
#X connect 33 0 40 0;
#X connect 33 0 41 0;
#X connect 33 1 42 1;
#X connect 33 1 43 1;
#X connect 36 0 25 1;
#X connect 36 1 25 0;
#X connect 36 2 33 1;
#X connect 37 0 36 0;
#X connect 38 0 37 0;
#X connect 39 0 38 0;
#X connect 40 0 42 0;
#X connect 41 0 43 0;
#X connect 42 0 80 0;
#X connect 43 0 80 1;
#X connect 44 0 47 0;
#X connect 44 0 13 1;
#X connect 45 0 44 1;
#X connect 45 1 44 0;
#X connect 46 0 69 0;
#X connect 46 0 74 0;
#X connect 47 0 67 0;
#X connect 47 1 70 1;
#X connect 47 2 67 1;
#X connect 48 0 10 0;
#X connect 49 0 39 0;
#X connect 50 0 60 0;
#X connect 54 0 56 0;
#X connect 54 0 65 0;
#X connect 55 0 31 0;
#X connect 56 0 12 0;
#X connect 57 0 49 1;
#X connect 58 0 23 0;
#X connect 59 0 24 0;
#X connect 60 0 51 0;
#X connect 61 0 82 0;
#X connect 61 0 82 1;
#X connect 62 0 27 0;
#X connect 63 0 79 0;
#X connect 63 1 79 1;
#X connect 65 0 56 1;
#X connect 66 0 55 1;
#X connect 67 0 68 0;
#X connect 68 0 81 0;
#X connect 68 1 81 1;
#X connect 69 0 70 0;
#X connect 70 0 45 0;
#X connect 71 0 72 0;
#X connect 71 0 73 0;
#X connect 72 0 63 0;
#X connect 73 0 72 1;
#X connect 74 0 69 1;


More information about the Pd-list mailing list