[PD-cvs] externals/pdp/doc/examples example01.pd, 1.3, 1.4 example02.pd, 1.2, 1.3 example03.pd, 1.4, 1.5 example04.pd, 1.2, 1.3 example05.pd, 1.2, 1.3 example06.pd, 1.2, 1.3 example07.pd, 1.2, 1.3 example08.pd, 1.2, 1.3 example09.pd, 1.2, 1.3 example10.pd, 1.2, 1.3 example11.pd, 1.2, 1.3 example12.pd, 1.2, 1.3 example13.pd, 1.2, 1.3 example14.pd, 1.2, 1.3 example15.pd, 1.2, 1.3

Hans-Christoph Steiner eighthave at users.sourceforge.net
Fri Dec 16 02:05:33 CET 2005


Update of /cvsroot/pure-data/externals/pdp/doc/examples
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6756/doc/examples

Added Files:
	example01.pd example02.pd example03.pd example04.pd 
	example05.pd example06.pd example07.pd example08.pd 
	example09.pd example10.pd example11.pd example12.pd 
	example13.pd example14.pd example15.pd 
Log Message:
checking in pdp 0.12.4 from http://zwizwa.fartit.com/pd/pdp/pdp-0.12.4.tar.gz

--- NEW FILE: example11.pd ---
#N canvas 210 529 680 275 10;
#N canvas 0 0 450 300 graph1 0;
#X array mapping 64 float 1;
#A 0 0.0916017 -0.201423 -0.477099 -0.711681 -0.884964 -0.982024 -0.9945
-0.921318 -0.76878 -0.550026 -0.283897 0.00668462 0.296691 0.561142
0.777261 0.926433 0.995809 0.979413 0.878658 0.702222 0.465302 0.188305
-0.104911 -0.389091 -0.639758 -0.835322 -0.958937 -0.999957 -0.954848
-0.827497 -0.628871 -0.37608 -0.0908956 0.202118 0.477722 0.712179
0.885295 0.982158 0.994426 0.92104 0.768324 0.54943 0.283212 -0.00739881
-0.297373 -0.561733 -0.777711 -0.926702 -0.995875 -0.979271 -0.87832
-0.701718 -0.464675 -0.187609 0.105617 0.389745 0.640304 0.835712 0.959139
0.999952 0.954637 0.827096 0.628316 0.375418;
#X coords 0 1 63 -1 200 140 1;
#X restore 242 21 graph;
#X msg 50 142 approx mapping;
#X obj 20 86 pdp_t;
#X text 235 165 -1 ----------- 0 ----------- 1;
#X obj 50 115 spigot;
#X obj 87 92 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X obj 20 225 pdp_cheby 10;
#X obj 515 138 tabsend~ mapping;
#X obj 515 112 osc~;
#X floatatom 515 65 5 0 0;
#X floatatom 573 64 5 0 0;
#N canvas 0 0 450 300 fblock 0;
#X obj 36 36 inlet;
#X obj 101 35 inlet;
#X obj 42 196 outlet;
#X obj 104 83 samplerate~;
#X obj 59 158 +;
#X obj 103 144 *;
#X obj 103 59 t b b f;
#X text 200 35 fblock: compute block relative frequencies;
#X text 200 79 right inlet is also "active";
#X text 201 119 main usage is to compute block synchronous frequencies
;
#X text 200 134 for spectral domain processing;
#X text 201 49 out = left + right * (sys samplerate / blocksize);
#X obj 101 115 / 64;
#X connect 0 0 4 0;
#X connect 1 0 6 0;
#X connect 3 0 12 0;
#X connect 4 0 2 0;
#X connect 5 0 4 1;
#X connect 6 0 4 0;
#X connect 6 1 3 0;
#X connect 6 2 5 1;
#X connect 12 0 5 0;
#X restore 515 89 pd fblock;
#X obj 20 40 metro 40;
#X obj 20 62 pdp_v4l;
#X msg 515 37 0.17;
#X text 236 208 send a signal to a table and use this as an intensity
mapping function in pdp_cheby;
#X obj 20 250 pdp_xv;
#X obj 20 15 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X msg 573 36 3;
#X msg 133 207 chanmask \$1;
#X floatatom 133 185 5 0 0;
#X msg 133 165 1;
#X connect 1 0 6 0;
#X connect 2 0 6 0;
#X connect 2 1 4 0;
#X connect 4 0 1 0;
#X connect 5 0 4 1;
#X connect 6 0 16 0;
#X connect 8 0 7 0;
#X connect 9 0 11 0;
#X connect 10 0 11 1;
#X connect 11 0 8 0;
#X connect 12 0 13 0;
#X connect 13 0 2 0;
#X connect 14 0 9 0;
#X connect 17 0 12 0;
#X connect 18 0 10 0;
#X connect 19 0 6 0;
#X connect 20 0 19 0;
#X connect 21 0 20 0;

--- NEW FILE: example12.pd ---
#N canvas 578 52 635 489 10;
#X obj 83 183 metro 40;
#X obj 83 154 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X obj 83 361 pdp_xv;
#X obj 165 299 pdp_loop 50;
#X obj 218 167 f 0;
#X obj 218 198 + 1;
#X obj 218 107 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 247 140 0;
#X obj 165 361 pdp_xv;
#X msg 165 259 store \$1;
#X obj 83 225 pdp_v4l;
#X msg 29 118 open /dev/video1;
#X floatatom 218 230 5 0 0;
#X obj 312 385 pdp_save_png_sequence 50;
#X obj 312 351 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 29 96 open /dev/video0;
#X text 337 349 <- click to save sequence in /tmp dir;
#X text 247 106 <- click to make a snapshot;
#X text 288 139 <- click to reset recording to loop;
#X text 273 229 <- recorded frame;
#X text 28 27 make loop of snapshots;
#X connect 0 0 10 0;
#X connect 0 0 3 0;
#X connect 1 0 0 0;
#X connect 3 0 8 0;
#X connect 3 0 13 0;
#X connect 4 0 5 0;
#X connect 5 0 4 1;
#X connect 5 0 9 0;
#X connect 5 0 12 0;
#X connect 6 0 4 0;
#X connect 7 0 4 1;
#X connect 9 0 3 0;
#X connect 10 0 2 0;
#X connect 10 0 3 0;
#X connect 11 0 10 0;
#X connect 14 0 13 0;
#X connect 15 0 11 0;

--- NEW FILE: example14.pd ---
#N canvas 621 348 611 467 10;
#X obj 168 329 pdp_xv;
#X obj 168 78 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X obj 168 142 pdp_v4l;
#X obj 168 108 metro 40;
#X msg 265 83 open /dev/video1;
#X floatatom 311 151 5 0 0;
#X obj 168 194 pdp_agc 0.5;
#X floatatom 310 211 5 0 0;
#X obj 168 245 pdp_contrast 0.5;
#X msg 4 157 chanmask \$1;
#X floatatom 4 133 5 0 0;
#X msg 4 104 1;
#X msg 35 104 3;
#X msg 67 104 5;
#X msg 99 104 7;
#X obj 314 192 hsl 128 15 0 1 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 12300 1;
#X obj 314 132 hsl 128 15 0 1 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 7900 1;
#X msg 265 58 open /dev/video0;
#X floatatom 310 272 5 0 0;
#X obj 314 253 hsl 128 15 0 3 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 0 1;
#X obj 168 298 pdp_saturation 0.5;
#X text 7 79 Y;
#X text 36 78 YCr;
#X text 68 79 YCb;
#X text 98 78 YCrCb;
#X text 25 15 some basic image enhancements;
#X text 13 60 agc color channels;
#X obj 183 166 pdp_flip_lr;
#X connect 1 0 3 0;
#X connect 2 0 27 0;
#X connect 3 0 2 0;
#X connect 4 0 2 0;
#X connect 5 0 6 1;
#X connect 6 0 8 0;
#X connect 7 0 8 1;
#X connect 8 0 20 0;
#X connect 9 0 6 0;
#X connect 10 0 9 0;
#X connect 11 0 10 0;
#X connect 12 0 10 0;
#X connect 13 0 10 0;
#X connect 14 0 10 0;
#X connect 15 0 7 0;
#X connect 16 0 5 0;
#X connect 17 0 2 0;
#X connect 18 0 20 1;
#X connect 19 0 18 0;
#X connect 20 0 0 0;
#X connect 27 0 6 0;

--- NEW FILE: example09.pd ---
#N canvas 43 348 497 337 10;
#X obj 88 104 pdp_grey2mask;
#X obj 88 148 pdp_gain;
#X obj 88 174 pdp_gain;
#X obj 88 198 pdp_gain;
#X msg 6 130 chanmask 1;
#X msg 6 180 chanmask 4;
#X msg 6 156 chanmask 2;
#X obj 6 103 loadbang;
#X floatatom 208 130 5 0 0;
#X floatatom 208 156 5 0 0;
#X floatatom 208 180 5 0 0;
#X obj 88 234 pdp_xv;
#X obj 88 40 metro 30;
#X obj 88 13 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 88 75 pdp_v4l;
#X text 26 267 a simple colour gradient patch using grey2mask and individual
channel gains (set with the binary chanmask);
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 11 0;
#X connect 4 0 1 0;
#X connect 4 0 6 0;
#X connect 5 0 3 0;
#X connect 6 0 2 0;
#X connect 6 0 5 0;
#X connect 7 0 4 0;
#X connect 8 0 1 1;
#X connect 9 0 2 1;
#X connect 10 0 3 1;
#X connect 12 0 14 0;
#X connect 13 0 12 0;
#X connect 14 0 0 0;

--- NEW FILE: example10.pd ---
#N canvas 147 266 497 337 10;
#X obj 88 104 pdp_grey2mask;
#X msg 6 130 chanmask 1;
#X msg 6 186 chanmask 4;
#X msg 6 158 chanmask 2;
#X obj 6 103 loadbang;
#X floatatom 207 130 5 0 0;
#X floatatom 253 130 5 0 0;
#X floatatom 299 130 5 0 0;
#X obj 88 234 pdp_xv;
#X obj 88 40 metro 30;
#X obj 88 13 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 88 75 pdp_v4l;
#X obj 88 148 pdp_cheby3o;
#X floatatom 345 130 5 0 0;
#X floatatom 207 158 5 0 0;
#X floatatom 253 158 5 0 0;
#X floatatom 299 158 5 0 0;
#X obj 88 176 pdp_cheby3o;
#X floatatom 345 158 5 0 0;
#X floatatom 207 186 5 0 0;
#X floatatom 253 186 5 0 0;
#X floatatom 299 186 5 0 0;
#X obj 88 204 pdp_cheby3o;
#X floatatom 345 186 5 0 0;
#X text 26 267 a more complex colour gradient patch using grey2mask
and individual channel chebychev colour shapers (set with the binary
chanmask);
#X connect 0 0 12 0;
#X connect 1 0 3 0;
#X connect 1 0 12 0;
#X connect 1 0 12 0;
#X connect 2 0 22 0;
#X connect 3 0 2 0;
#X connect 3 0 17 0;
#X connect 4 0 1 0;
#X connect 5 0 12 1;
#X connect 6 0 12 2;
#X connect 7 0 12 3;
#X connect 9 0 11 0;
#X connect 10 0 9 0;
#X connect 11 0 0 0;
#X connect 12 0 17 0;
#X connect 13 0 12 4;
#X connect 14 0 17 1;
#X connect 15 0 17 2;
#X connect 16 0 17 3;
#X connect 17 0 22 0;
#X connect 18 0 17 4;
#X connect 19 0 22 1;
#X connect 20 0 22 2;
#X connect 21 0 22 3;
#X connect 22 0 8 0;
#X connect 23 0 22 4;

--- NEW FILE: example06.pd ---
#N canvas 92 197 605 585 10;
#X obj 24 85 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 42 25 stop;
#X msg 80 24 bang;
#X floatatom 122 25 5 0 0;
#X obj 60 485 pdp_xv;
#X obj 60 439 pdp_bq;
#X obj 111 334 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
1;
#X obj 169 332 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
1;
#X obj 97 278 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 154 277 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
1;
#X msg 95 303 lr \$1;
#X msg 150 304 rl \$1;
#X msg 99 350 tb \$1;
#X msg 154 351 bt \$1;
#X obj 392 240 hsl 128 15 0.05 0.5 1 1 empty empty empty -2 -6 0 8
-262144 -1 -1 3000 1;
#X obj 450 280 hsl 128 15 0.1 10 1 1 empty empty empty -2 -6 0 8 -262144
-1 -1 1900 1;
#X obj 391 307 t b f;
#X obj 394 345 pack s 0 0;
#X msg 391 378 \$1 \$2 \$3;
#X obj 447 310 t b f;
#X msg 301 199 lpf;
#X msg 333 200 apf;
#X obj 130 198 random 2;
#X obj 195 198 random 2;
#X obj 60 147 pdp_trigger;
#X obj 128 235 random 2;
#X obj 193 235 random 2;
#X obj 60 111 pdp_v4l;
#X obj 301 121 loadbang;
#X obj 60 53 metro 40;
#X text 388 219 frequency;
#X text 447 261 Q;
#X text 312 175 filter type;
#X connect 0 0 27 0;
#X connect 1 0 29 0;
#X connect 2 0 29 0;
#X connect 3 0 29 1;
#X connect 5 0 4 0;
#X connect 6 0 12 0;
#X connect 7 0 13 0;
#X connect 8 0 10 0;
#X connect 9 0 11 0;
#X connect 10 0 5 0;
#X connect 11 0 5 0;
#X connect 12 0 5 0;
#X connect 13 0 5 0;
#X connect 14 0 16 0;
#X connect 15 0 19 0;
#X connect 16 0 17 0;
#X connect 16 1 17 1;
#X connect 17 0 18 0;
#X connect 18 0 5 0;
#X connect 19 0 17 0;
#X connect 19 1 17 2;
#X connect 20 0 17 0;
#X connect 21 0 17 0;
#X connect 22 0 8 0;
#X connect 23 0 9 0;
#X connect 24 0 5 0;
#X connect 24 1 23 0;
#X connect 24 1 22 0;
#X connect 24 1 26 0;
#X connect 24 1 25 0;
#X connect 25 0 6 0;
#X connect 26 0 7 0;
#X connect 27 0 24 0;
#X connect 28 0 20 0;
#X connect 29 0 27 0;

--- NEW FILE: example08.pd ---
#N canvas 508 53 640 487 10;
#X obj 17 376 pdp_xv;
#X obj 17 11 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 17 32 metro 40;
#X floatatom 67 8 5 0 0 0 - - -;
#X obj 17 58 pdp_v4l;
#X obj 17 279 pdp_zrot;
#X obj 175 144 unpack 0 0;
#X obj 280 263 * 360;
#X obj 281 240 * 3;
#X msg 140 303 cursor;
#X obj 140 280 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
1;
#X floatatom 325 226 5 0 0 0 - - -;
#X floatatom 325 249 5 0 0 0 - - -;
#X obj 175 108 route drag;
#X obj 17 231 pdp_mix;
#X floatatom 61 205 5 0 0 0 - - -;
#X obj 17 453 print;
#X obj 17 422 spigot;
#X obj 54 397 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X text 83 396 print the mouse event messages;
#X floatatom 175 180 5 0 0 0 - - -;
#X floatatom 240 182 5 0 0 0 - - -;
#X text 109 41 using the mouse pointer in an xv window to control a
patch;
#X text 262 108 drag event coordinates mapped to zoom and rotation
;
#X msg 86 178 0.98;
#X msg 47 177 0;
#X connect 0 0 13 0;
#X connect 0 0 17 0;
#X connect 1 0 2 0;
#X connect 2 0 4 0;
#X connect 3 0 2 1;
#X connect 4 0 14 0;
#X connect 5 0 0 0;
#X connect 5 0 14 1;
#X connect 6 0 8 0;
#X connect 6 0 20 0;
#X connect 6 1 7 0;
#X connect 6 1 21 0;
#X connect 7 0 5 2;
#X connect 8 0 5 1;
#X connect 9 0 0 0;
#X connect 10 0 9 0;
#X connect 11 0 8 1;
#X connect 12 0 7 1;
#X connect 13 0 6 0;
#X connect 14 0 5 0;
#X connect 15 0 14 2;
#X connect 17 0 16 0;
#X connect 18 0 17 1;
#X connect 24 0 15 0;
#X connect 25 0 15 0;

--- NEW FILE: example05.pd ---
#N canvas 584 220 538 637 10;
#X obj 10 11 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 120 117 pdp_grey;
#X obj 435 194 pdp_control;
#X msg 435 167 thread 0;
#X obj 121 224 pdp_reg;
#X floatatom 81 7 5 0 0;
#X msg 35 10 stop;
#X floatatom 187 341 5 0 0;
#X obj 120 410 pdp_zrot;
#X floatatom 188 389 5 0 0;
#X obj 120 453 pdp_blur;
#X floatatom 188 435 5 0 0;
#X obj 120 92 pdp_noise;
#X obj 120 70 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#N canvas 623 175 567 478 nlmap 0;
#X obj 89 138 pdp_affine;
#X msg 123 108 -1;
#X msg 156 108 1;
#X obj 92 161 pdp_mul;
#X obj 95 189 pdp_gain;
#X floatatom 234 159 5 0 0;
#X msg 259 119 3.73;
#X obj 100 272 pdp_affine;
#X msg 134 242 -1;
#X msg 167 242 1;
#X obj 103 295 pdp_mul;
#X obj 106 323 pdp_gain;
#X floatatom 168 299 5 0 0;
#X msg 185 271 3.73;
#X obj 254 54 inlet;
#X obj 79 55 inlet;
#X obj 98 405 outlet;
#X obj 164 60 loadbang;
#X obj 190 84 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 260 220 this computes f(f(image));
#X text 261 236 with f(x) = k*x*(1-x);
#X text 286 160 k;
#X text 260 253 the logistic map;
#X text 173 353 2 iterations are used to eliminate most of the high
frequency flickering;
#X connect 0 0 3 0;
#X connect 1 0 0 1;
#X connect 2 0 0 2;
#X connect 3 0 4 0;
#X connect 4 0 10 1;
#X connect 4 0 7 0;
#X connect 5 0 4 1;
#X connect 5 0 12 0;
#X connect 6 0 5 0;
#X connect 7 0 10 0;
#X connect 8 0 7 1;
#X connect 9 0 7 2;
#X connect 10 0 11 0;
#X connect 11 0 16 0;
#X connect 12 0 11 1;
#X connect 13 0 12 0;
#X connect 14 0 5 0;
#X connect 15 0 3 1;
#X connect 15 0 0 0;
#X connect 17 0 18 0;
#X connect 18 0 2 0;
#X connect 18 0 1 0;
#X connect 18 0 6 0;
#X connect 18 0 8 0;
#X connect 18 0 9 0;
#X restore 121 274 pd nlmap;
#X obj 73 576 pdp_xv;
#X floatatom 180 232 5 0 0;
#X text 196 275 2 iterations of the logistic map function;
#X obj 121 143 pdp_mul;
#X obj 297 94 pdp_noise;
#X obj 297 72 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 297 121 pdp_mul;
#X obj 73 521 pdp_saturation;
#X floatatom 166 490 5 0 0;
#X obj 30 36 metro 70;
#X msg 181 206 3.8;
#X msg 186 318 1.17;
#X msg 188 368 -2.33;
#X text 242 341 zoom;
#X text 241 391 rotate;
#X msg 188 414 0.33;
#X text 139 12 feedback with nonlinear mapping + zoom + rotate + blur
;
#X msg 82 -15 40;
#X msg 116 -15 500;
#X text 111 47 grey1;
#X obj 212 119 pdp_grey;
#X obj 212 94 pdp_noise;
#X obj 212 72 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 203 49 grey2;
#X text 287 50 colour1;
#X obj 388 95 pdp_noise;
#X obj 388 73 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 378 51 colour2;
#X msg 238 463 -0.5;
#X msg 282 463 0.5;
#X connect 0 0 24 0;
#X connect 1 0 18 1;
#X connect 1 0 18 0;
#X connect 3 0 2 0;
#X connect 4 0 14 0;
#X connect 5 0 24 1;
#X connect 6 0 24 0;
#X connect 7 0 8 1;
#X connect 8 0 10 0;
#X connect 9 0 8 2;
#X connect 10 0 4 1;
#X connect 11 0 10 1;
#X connect 12 0 1 0;
#X connect 13 0 12 0;
#X connect 14 0 8 0;
#X connect 14 0 22 0;
#X connect 16 0 14 1;
#X connect 18 0 4 0;
#X connect 19 0 21 1;
#X connect 19 0 21 0;
#X connect 20 0 19 0;
#X connect 21 0 4 0;
#X connect 22 0 15 0;
#X connect 23 0 22 1;
#X connect 24 0 4 0;
#X connect 25 0 16 0;
#X connect 26 0 7 0;
#X connect 27 0 9 0;
#X connect 30 0 11 0;
#X connect 32 0 5 0;
#X connect 33 0 5 0;
#X connect 35 0 4 0;
#X connect 36 0 35 0;
#X connect 37 0 36 0;
#X connect 40 0 4 0;
#X connect 41 0 40 0;
#X connect 43 0 23 0;
#X connect 44 0 23 0;

--- NEW FILE: example03.pd ---
#N canvas 141 84 841 685 10;
#X obj 68 318 pdp_noise;
#X obj 68 85 metro 40;
#X obj 68 58 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 68 484 pdp_del 50;
#X obj 112 424 pdp_gain;
#X floatatom 240 518 5 0 0;
#X obj 68 514 pdp_blur;
#X obj 243 499 hsl 128 15 0 1 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 10100 1;
#X floatatom 240 367 5 0 0;
#X obj 243 342 hsl 128 15 0 5 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 0 1;
#X floatatom 240 587 5 0 0;
#X obj 243 567 hsl 128 15 0 1 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 4100 1;
#X floatatom 239 428 5 0 0;
#X obj 242 409 hsl 128 15 -5 5 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 11900 1;
#X msg 15 460 reset;
#X obj 68 459 pdp_add;
#X obj 68 357 pdp_gain;
#X text 203 7 this example shows how to use a delay line with a loop
gain > 1 and some processing inside the loop to produce a plasma like
effect. (WARNING: this can produce a very intense strobe effect \,
so if you're sensitive to flashing lights please be careful...);
#X text 391 407 a |gain| > 1 ensures regeneration;
#X floatatom 119 56 5 0 0;
#X obj 68 582 pdp_motion_phase;
#X floatatom 133 459 5 0 0;
#X text 392 495 blur ensures spatial coupling (determines the speed
at which "blobs" move around the screen);
#X text 392 565 a motion phase effect to spice it up (this causes local
negative feedback around suddon changes);
#X msg 109 13 40;
#X msg 144 13 1000;
#X msg 109 250 type grey;
#X msg 109 135 type yv12;
#X obj 68 619 pdp_xv;
#X text 201 247 it also works for black and white \, but all negative
colours will be clipped to 0 (black) on output.;
#X text 393 340 mix in some noise to get it going (set blur to minimal
when starting so the added noise won't be blurred to black);
#X text 202 96 it illustrates one of the advantages of working in an
additive/subtractive colour space. (here yuv or YCrCb). since legal
colours can be both positive and negative \, the analogy with audio
signals is easily drawn. this network can be seen as a nonlinear feedback
delay network. (nonlinear because of the saturating gain). the image
delay line can be seen as a parallel delay line \, one for each pixel.
coupling between the delays is done using a spatial blur effect. the
additional temporal filtering isn't necessary \, but it produces a
nice additional effect.;
#X obj 534 661 pdp_control;
#X obj 534 684 print;
#X msg 534 637 thread \$1;
#X obj 534 614 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1
1;
#X connect 0 0 16 0;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X connect 3 0 6 0;
#X connect 4 0 15 1;
#X connect 6 0 20 0;
#X connect 7 0 5 0;
#X connect 7 0 6 1;
#X connect 9 0 8 0;
#X connect 9 0 16 1;
#X connect 11 0 10 0;
#X connect 11 0 20 1;
#X connect 13 0 12 0;
#X connect 13 0 4 1;
#X connect 14 0 3 0;
#X connect 15 0 3 0;
#X connect 16 0 15 0;
#X connect 19 0 1 1;
#X connect 20 0 4 0;
#X connect 20 0 28 0;
#X connect 21 0 3 1;
#X connect 24 0 19 0;
#X connect 25 0 19 0;
#X connect 26 0 0 0;
#X connect 27 0 0 0;
#X connect 32 0 33 0;
#X connect 34 0 32 0;
#X connect 35 0 34 0;

--- NEW FILE: example02.pd ---
#N canvas 85 437 473 316 10;
#X obj 91 268 pdp_xv;
#X obj 91 73 pdp_v4l;
#X obj 91 30 metro 40;
#X obj 90 5 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1
;
#X obj 326 57 pdp_control;
#X msg 326 29 thread \$1;
#X obj 326 5 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X text 146 3 process in greyscale;
#X obj 135 195 pdp_gain;
#X obj 135 222 pdp_gain;
#X msg 168 27 type yv12;
#X obj 91 129 pdp_mix;
#X msg 169 51 type grey;
#X obj 216 194 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -6 0 10
-262144 -1 -1 0.62 256;
#X obj 139 103 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -6 0 10
-262144 -1 -1 0.82 256;
#X obj 215 133 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -6 0 10
-262144 -1 -1 8 256;
#X obj 135 162 pdp_del 25;
#X obj 216 173 nbx 5 14 -1e+37 1e+37 0 1 empty empty empty 0 -6 0 10
-262144 -1 -1 1.5 256;
#X text 289 177 gains clip at -1 \, 1;
#X msg 159 129 reset;
#X connect 1 0 11 0;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X connect 5 0 4 0;
#X connect 6 0 5 0;
#X connect 8 0 9 0;
#X connect 9 0 11 1;
#X connect 10 0 1 0;
#X connect 11 0 0 0;
#X connect 11 0 16 0;
#X connect 12 0 1 0;
#X connect 13 0 9 1;
#X connect 14 0 11 2;
#X connect 15 0 16 1;
#X connect 16 0 8 0;
#X connect 17 0 8 1;
#X connect 19 0 16 0;

--- NEW FILE: example07.pd ---
#N canvas 466 98 659 764 10;
#X obj 18 649 pdp_xv;
#X obj 17 58 pdp_noise;
#X obj 16 14 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 17 325 pdp_add;
#X obj 17 277 pdp_gain;
#X obj 87 277 pdp_gain;
#X floatatom 127 238 5 0 0;
#X floatatom 174 238 5 0 0;
#X obj 17 120 pdp_mix;
#X floatatom 96 92 5 0 0;
#X obj 16 35 metro 40;
#X obj 17 87 pdp_grey;
#X msg 96 70 0.8;
#X floatatom 76 212 5 0 0;
#X obj 105 375 pdp_del 1;
#X msg 163 349 1;
#X obj 17 440 pdp_add;
#X obj 105 400 pdp_gain;
#X floatatom 208 382 5 0 0;
#X obj 17 243 pdp_blur;
#X msg 133 69 1;
#X floatatom 76 560 5 0 0;
#X obj 17 591 pdp_blur;
#X obj 18 619 pdp_gain;
#X floatatom 101 594 5 0 0;
#X msg 73 535 0.22;
#X msg 208 358 -0.61;
#X msg 132 214 4.3;
#X msg 178 215 -6.69;
#X msg 76 183 0.32;
#X msg 130 566 4;
#X text 287 386 subtract previous frame (time derivative);
#X text 97 47 some noise to get started;
#X text 235 216 construct a laplace like operator by blurring the image
and subtractiong the original from it;
#X text 371 12 a surface wave patch;
#X floatatom 67 8 5 0 0;
#X connect 1 0 11 0;
#X connect 2 0 10 0;
#X connect 3 0 16 0;
#X connect 4 0 3 0;
#X connect 5 0 3 1;
#X connect 6 0 4 1;
#X connect 7 0 5 1;
#X connect 8 0 5 0;
#X connect 8 0 14 0;
#X connect 8 0 19 0;
#X connect 9 0 8 2;
#X connect 10 0 1 0;
#X connect 11 0 8 0;
#X connect 12 0 9 0;
#X connect 13 0 19 1;
#X connect 14 0 17 0;
#X connect 15 0 14 1;
#X connect 16 0 22 0;
#X connect 16 0 8 1;
#X connect 17 0 16 1;
#X connect 18 0 17 1;
#X connect 19 0 4 0;
#X connect 20 0 9 0;
#X connect 21 0 22 1;
#X connect 22 0 23 0;
#X connect 23 0 0 0;
#X connect 24 0 23 1;
#X connect 25 0 21 0;
#X connect 26 0 18 0;
#X connect 27 0 6 0;
#X connect 28 0 7 0;
#X connect 29 0 13 0;
#X connect 30 0 24 0;
#X connect 35 0 10 1;

--- NEW FILE: example01.pd ---
#N canvas 657 0 518 446 10;
#X obj 133 414 pdp_xv;
#X obj 177 76 pdp_v4l;
#X obj 177 33 metro 40;
#X obj 176 8 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 35 149 pdp_conv;
#X obj 35 173 pdp_conv_sobel_edge;
#X obj 412 60 pdp_control;
#X msg 412 32 thread \$1;
#X obj 412 8 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 133 352 pdp_gradient;
#X obj 133 288 pdp_motion_phase;
#X msg 254 30 type grey;
#X obj 35 125 pdp_del 8;
#X obj 35 198 pdp_gain 6;
#X msg 240 252 0.45;
#X text 223 125 8 frames delay;
#X text 223 149 smooth;
#X text 223 174 edge detect;
#X text 222 200 amplify;
#X text 232 6 process in greyscale;
#X text 322 287 motion phase shifter;
#X text 320 354 grey -> colour palette;
#X msg 36 323 rgb 1 0.5 0;
#X obj 133 252 pdp_add;
#X msg 133 216 debug;
#X connect 1 0 12 0;
#X connect 1 0 23 1;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 13 0;
#X connect 7 0 6 0;
#X connect 8 0 7 0;
#X connect 9 0 0 0;
#X connect 10 0 9 0;
#X connect 11 0 1 0;
#X connect 12 0 4 0;
#X connect 13 0 23 0;
#X connect 14 0 10 1;
#X connect 22 0 9 0;
#X connect 23 0 10 0;
#X connect 24 0 23 0;

--- NEW FILE: example13.pd ---
#N canvas 419 114 799 646 10;
#X obj 450 429 pdp_xv;
#X obj 545 76 pdp_control;
#X msg 545 48 thread \$1;
#X obj 545 24 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 134 40 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X msg 471 397 size 640 480;
#X obj 239 393 +;
#X obj 190 432 vsl 15 128 1 0 0 0 empty empty empty 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 190 393 -;
#X obj 59 386 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144
-1 -1 0 1;
#X obj 59 401 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144
-1 -1 0 1;
#X obj 59 416 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144
-1 -1 0 1;
#X obj 205 432 vsl 15 128 1 0 0 0 empty empty empty 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 220 432 vsl 15 128 1 0 0 0 empty empty empty 0 -8 0 8 -262144
-1 -1 0 1;
#X obj 190 366 unpack f f;
#X obj 62 317 unpack f f;
#X obj 68 360 +;
#X obj 45 360 -;
#X obj 151 264 pack f f;
#X obj 215 265 pack f f;
#X msg 295 77 dim 320 240;
#X obj 134 72 metro 40;
#X msg 294 54 dim 640 480;
#X obj 134 100 pdp_v4l;
#X obj 450 366 pdp_zoom;
#X floatatom 450 308 5 0 0;
#X msg 553 311 centerx \$1;
#X floatatom 553 289 5 0 0;
#X floatatom 636 292 5 0 0;
#X msg 635 310 centery \$1;
#X obj 511 197 unpack f f f f;
#X obj 450 287 min;
#X obj 446 252 expr .5/($f1+.02);
#X obj 572 252 expr .5/($f1+.02);
#X msg 450 339 zoomx \$1 \, zoomy \$1;
#X msg 295 8 open /dev/video0;
#X msg 295 30 open /dev/video1;
#X obj 309 244 pack f f f f;
#X obj 134 156 pdp_diff;
#X text 208 156 <- compute difference between current and previous
frame;
#X obj 134 226 pdp_cog_abs_thresh 0.15;
#X text 331 492 using the blob tracker on a difference signal to detect
motion;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X connect 4 0 21 0;
#X connect 5 0 0 0;
#X connect 6 0 13 0;
#X connect 8 0 7 0;
#X connect 14 0 12 0;
#X connect 14 0 8 0;
#X connect 14 0 6 0;
#X connect 14 1 8 1;
#X connect 14 1 6 1;
#X connect 15 0 17 0;
#X connect 15 0 16 0;
#X connect 15 0 10 0;
#X connect 15 1 16 1;
#X connect 15 1 17 1;
#X connect 16 0 11 0;
#X connect 17 0 9 0;
#X connect 18 0 15 0;
#X connect 19 0 14 0;
#X connect 20 0 23 0;
#X connect 21 0 23 0;
#X connect 22 0 23 0;
#X connect 23 0 38 0;
#X connect 24 0 0 0;
#X connect 25 0 34 0;
#X connect 26 0 24 0;
#X connect 27 0 26 0;
#X connect 28 0 29 0;
#X connect 29 0 24 0;
#X connect 30 0 27 0;
#X connect 30 1 32 0;
#X connect 30 2 28 0;
#X connect 30 3 33 0;
#X connect 31 0 25 0;
#X connect 32 0 31 0;
#X connect 33 0 31 1;
#X connect 34 0 24 0;
#X connect 35 0 23 0;
#X connect 36 0 23 0;
#X connect 37 0 30 0;
#X connect 38 0 24 0;
#X connect 38 0 40 0;
#X connect 40 1 18 0;
#X connect 40 1 37 0;
#X connect 40 2 19 0;
#X connect 40 2 37 2;
#X connect 40 3 18 1;
#X connect 40 3 37 1;
#X connect 40 4 19 1;
#X connect 40 4 37 3;

--- NEW FILE: example15.pd ---
#N canvas 632 359 559 496 10;
#X obj 127 57 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1
;
#X obj 127 81 metro 40;
#X obj 148 57 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 126 110 pdp_v4l;
#X msg 229 56 open /dev/video0;
#X msg 228 80 open /dev/video1;
#X obj 126 151 pdp_motion_fade 1;
#X obj 126 174 pdp_contrast 0.16;
#X obj 126 199 pdp_mul;
#X obj 126 224 pdp_gain 22;
#X text 7 2 using motion_fade \, contrast \, mul and gain to get a
motion triggered effect;
#X obj 126 258 pdp_xv;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 2 0 1 0;
#X connect 3 0 6 0;
#X connect 4 0 3 0;
#X connect 5 0 3 0;
#X connect 6 0 7 0;
#X connect 7 0 8 1;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 11 0;

--- NEW FILE: example04.pd ---
#N canvas 89 39 931 736 10;
#X obj 68 204 pdp_noise;
#X obj 68 85 metro 40;
#X obj 68 58 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 112 303 pdp_gain;
#X floatatom 240 518 5 0 0;
#X obj 68 514 pdp_blur;
#X obj 243 499 hsl 128 15 0 1 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 6500 1;
#X floatatom 240 233 5 0 0;
#X obj 243 208 hsl 128 15 0 5 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 0 1;
#X floatatom 240 587 5 0 0;
#X obj 243 567 hsl 128 15 0 1 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 5000 1;
#X floatatom 239 307 5 0 0;
#X obj 242 288 hsl 128 15 -5 5 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 8920 1;
#X msg 15 339 reset;
#X obj 68 338 pdp_add;
#X obj 68 243 pdp_gain;
#X text 393 286 a |gain| > 1 ensures regeneration;
#X floatatom 119 56 5 0 0;
#X obj 68 582 pdp_motion_phase;
#X floatatom 133 338 5 0 0;
#X text 392 495 blur ensures spatial coupling (determines the speed
at which "blobs" move around the screen);
#X text 392 565 a motion phase effect to spice it up (this causes local
negative feedback around suddon changes);
#X msg 109 13 40;
#X msg 144 13 1000;
#X msg 146 119 type grey;
#X msg 147 90 type yv12;
#X obj 68 619 pdp_xv;
#X text 393 206 mix in some noise to get it going (set blur to minimal
when starting so the added noise won't be blurred to black);
#X obj 68 363 pdp_del 50;
#X text 242 14 this example is like example03 with a zoom / rotation
object thrown in;
#X obj 68 480 pdp_zrot;
#X floatatom 239 377 5 0 0;
#X obj 242 358 hsl 128 15 0.1 10 1 1 empty empty empty -2 -6 0 8 -262144
-1 -1 8567 1;
#X floatatom 239 446 5 0 0;
#X obj 242 426 hsl 128 15 0 360 0 1 empty empty empty -2 -6 0 8 -262144
-1 -1 300 1;
#X text 393 357 zoom;
#X msg 239 334 1;
#X msg 239 403 0;
#X msg 239 261 1;
#X text 392 420 rotation;
#X connect 0 0 15 0;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X connect 3 0 14 1;
#X connect 5 0 18 0;
#X connect 6 0 4 0;
#X connect 6 0 5 1;
#X connect 8 0 7 0;
#X connect 8 0 15 1;
#X connect 10 0 9 0;
#X connect 10 0 18 1;
#X connect 12 0 11 0;
#X connect 12 0 3 1;
#X connect 13 0 28 0;
#X connect 14 0 28 0;
#X connect 15 0 14 0;
#X connect 17 0 1 1;
#X connect 18 0 3 0;
#X connect 18 0 26 0;
#X connect 19 0 28 1;
#X connect 22 0 17 0;
#X connect 23 0 17 0;
#X connect 24 0 0 0;
#X connect 25 0 0 0;
#X connect 28 0 30 0;
#X connect 30 0 5 0;
#X connect 31 0 30 1;
#X connect 32 0 31 0;
#X connect 33 0 30 2;
#X connect 34 0 33 0;
#X connect 36 0 32 0;
#X connect 37 0 34 0;
#X connect 38 0 12 0;





More information about the Pd-cvs mailing list