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;