From 158623f3d62b49d88c990d662d8bdfa527175471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juha=20Vehvil=C3=A4inen?= Date: Sat, 31 Aug 2002 08:27:43 +0000 Subject: removed white space svn path=/trunk/Framestein/; revision=102 --- Patches/50.example-externals.pd | 342 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 342 insertions(+) create mode 100644 Patches/50.example-externals.pd (limited to 'Patches/50.example-externals.pd') diff --git a/Patches/50.example-externals.pd b/Patches/50.example-externals.pd new file mode 100644 index 0000000..cf776b0 --- /dev/null +++ b/Patches/50.example-externals.pd @@ -0,0 +1,342 @@ +#N canvas 438 30 549 595 12; +#N canvas 148 3 738 667 vframe 0; +#X obj 34 275 fs.frame; +#X obj 55 377 vimport; +#X obj 221 427 fs.frame; +#X msg 244 398 320x240; +#X msg 253 178 bang; +#X text 302 176 set vframe to import to; +#X text 26 509 Connect vframe directly to fs.frame to display it with +a bang.; +#X msg 253 206 bang; +#X text 302 198 import image \, and bang vframe again to display it +; +#X obj 150 331 vframe 640 480; +#X msg 34 245 320x240 \, noize \, colortv; +#X text 26 553 Here \, vframe is bigger (640x480) than the two fs.frames +(320x240). This is okay - as long as the fs.frames you import from +and to are of the same size \, the image will be right. If you import +to fs.frame of a different size than the fs.frame you imported from +-> garbage.; +#X msg 349 423 dock vframe \, 330+260; +#X obj 34 220 init; +#X obj 244 373 init; +#X text 17 14 vframe works much like fs.frame \, except the image is +in Pure Data's memory space. This allows converting images to signals +\, for example.; +#X text 16 74 args: width and height.; +#X text 18 103 vframe has no image loading or display functionality. +Images can be imported to and from fs.frame:; +#X connect 0 0 1 0; +#X connect 3 0 2 0; +#X connect 4 0 9 0; +#X connect 7 0 0 0; +#X connect 7 0 9 0; +#X connect 9 0 1 1; +#X connect 9 0 2 0; +#X connect 10 0 0 0; +#X connect 12 0 2 0; +#X connect 13 0 10 0; +#X connect 14 0 3 0; +#X restore 64 216 pd vframe; +#X obj 67 122 fs.main; +#X msg 67 86 6001; +#X text 160 215 basic image container; +#N canvas 256 206 620 420 vplugin 0; +#X obj 94 226 vframe; +#X obj 143 156 vplugin; +#X text 13 10 vframe can execute Framestein-plugins. vplugin has the +path to these plugins - open it up \, correct the path \, and try it. +; +#X msg 161 99 noize; +#X msg 218 99 colortv; +#X obj 94 286 fs.frame; +#X msg 201 240 dock vplugin \, 200+235; +#X connect 0 0 5 0; +#X connect 1 0 0 0; +#X connect 3 0 1 0; +#X connect 4 0 1 0; +#X connect 6 0 5 0; +#X restore 64 262 pd vplugin; +#X text 158 261 execute Framestein-plugins; +#N canvas 187 -3 642 679 vcopy 0; +#X obj 87 204 vcopy; +#X msg 240 145 tile \$1; +#X floatatom 240 116 5 0 0; +#X floatatom 240 176 5 0 0; +#X msg 240 201 xbend \$1; +#X obj 87 341 fs.frame; +#X obj 114 61 r vcopyexample; +#X obj 87 129 vref; +#X msg 87 98 bang; +#X floatatom 97 159 5 0 0; +#X msg 167 341 320x240; +#X obj 87 294 vframe 320 240; +#X msg 240 283 xbend \$1 \$2; +#X obj 240 258 pack f f; +#X floatatom 240 233 5 0 0; +#X floatatom 299 233 5 0 0; +#X msg 311 259 bang; +#X obj 386 201 random 320; +#X obj 386 227 random 320; +#X floatatom 386 113 5 0 0; +#X msg 118 379 dock vcopy \, 90+400; +#X text 17 9 Some plugins operate on two images. This is done with +vcopy:; +#X obj 167 315 init; +#X obj 386 139 fps 0.25; +#X connect 0 0 11 0; +#X connect 1 0 0 1; +#X connect 1 0 8 0; +#X connect 2 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 0 1; +#X connect 4 0 8 0; +#X connect 6 0 7 1; +#X connect 7 0 0 0; +#X connect 7 0 9 0; +#X connect 8 0 7 0; +#X connect 10 0 5 0; +#X connect 11 0 5 0; +#X connect 12 0 0 1; +#X connect 12 0 8 0; +#X connect 13 0 12 0; +#X connect 14 0 13 0; +#X connect 15 0 13 1; +#X connect 15 0 16 0; +#X connect 16 0 13 0; +#X connect 17 0 14 0; +#X connect 18 0 15 0; +#X connect 19 0 23 0; +#X connect 20 0 5 0; +#X connect 22 0 10 0; +#X connect 23 0 17 0; +#X connect 23 0 18 0; +#X restore 64 310 pd vcopy; +#X text 159 309 execute plugins that use two images; +#N canvas 148 7 833 572 vsig~ 0; +#X text 14 9 vsig~: convert image to signal; +#X obj 201 140 vframe; +#X obj 209 182 vsig~; +#X obj 209 446 vsnapshot~; +#X obj 257 185 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1 +-1; +#X obj 201 109 vplugin; +#X obj 284 413 vframe; +#X msg 201 75 noize \, colortv; +#X msg 378 99 \; pd dsp 1; +#X obj 209 485 fs.frame; +#X msg 284 387 bang; +#X text 402 204 - image signal; +#X text 403 228 - sync signal; +#X text 403 253 - bang when bottomright of image is reached; +#X text 383 302 vsnapshot~ inlets:; +#X text 382 180 vsig~ outlets:; +#X text 402 330 - image signal; +#X text 403 354 - sync signal; +#X text 403 380 - vframe to write image to; +#X obj 45 289 dac~; +#X floatatom 89 255 5 0 0; +#X text 83 289 sounds great!; +#X obj 45 255 *~ 0; +#X text 14 25 vsnapshot~: convert signal to image; +#X msg 273 102 black; +#X obj 44 370 osc~ 2; +#X obj 44 397 *~ 0; +#X floatatom 86 397 5 0 0; +#X text 100 372 looks great!; +#X floatatom 44 345 5 0 0; +#X msg 44 485 dock vsig~ \, 12+87; +#X obj 378 72 init; +#X obj 284 361 init; +#X connect 1 0 2 0; +#X connect 2 0 22 0; +#X connect 2 0 3 0; +#X connect 2 1 3 1; +#X connect 2 2 4 0; +#X connect 3 0 9 0; +#X connect 5 0 1 0; +#X connect 6 0 3 2; +#X connect 7 0 5 0; +#X connect 10 0 6 0; +#X connect 20 0 22 1; +#X connect 22 0 19 0; +#X connect 22 0 19 1; +#X connect 24 0 5 0; +#X connect 25 0 26 0; +#X connect 26 0 3 0; +#X connect 27 0 26 1; +#X connect 29 0 25 0; +#X connect 30 0 9 0; +#X connect 31 0 8 0; +#X connect 31 0 7 0; +#X connect 32 0 10 0; +#X restore 64 360 pd vsig~ and vsnapshot~; +#X text 257 359 convert image to signal and back; +#X text 232 440 separate red \, green and blue channels; +#X text 159 144 ... click on "dock" on subpatches.; +#X msg 118 86 reset; +#X msg 339 82 minimizeall; +#X text 159 122 start by clicking reset... and minimizeall; +#N canvas 233 -13 702 662 vframeread~ 0; +#X text 11 7 vframeread~ uses a sync-signal to read the image:; +#X obj 212 308 vframe; +#X obj 161 337 vimport; +#X obj 71 297 fs.frame; +#X obj 71 326 fs.copy; +#X obj 71 353 fs.frame; +#X msg 212 280 bang; +#X obj 212 251 reset; +#X msg 71 116 dock vframeread~ \, 10+100; +#X text 13 47 drop a movie (.avi) here...; +#X text 82 96 click here; +#X obj 361 92 vframeread~; +#X obj 361 312 vsnapshot~; +#X obj 14 307 fps 5; +#X floatatom 53 427 5 0 0; +#X msg 81 270 next \, bang; +#X obj 361 372 fs.frame; +#X msg 361 469 dock vframeread~ \, 330+440; +#X text 380 445 click here; +#X obj 436 287 vframe; +#X obj 436 237 reset; +#X msg 436 262 bang; +#X obj 361 344 vref; +#X floatatom 482 130 5 0 0; +#X obj 482 159 phasor~ 1; +#X obj 491 259 vplugin; +#X msg 491 235 black; +#X text 107 426 set framerate; +#X msg 482 104 14.9; +#X obj 482 79 reset; +#X text 534 130 see how it's done; +#X text 17 595 This gives a better frame-rate \, compromizing the image +quality..; +#X obj 361 204 *~ 1; +#X floatatom 388 179 5 0 0; +#X msg 87 398 25; +#X msg 524 104 25.19; +#X msg 388 152 1; +#X msg 419 152 -1; +#X msg 53 398 15; +#X connect 1 0 2 1; +#X connect 1 0 11 0; +#X connect 3 0 4 0; +#X connect 4 0 5 0; +#X connect 5 0 2 0; +#X connect 6 0 1 0; +#X connect 6 0 5 0; +#X connect 7 0 6 0; +#X connect 8 0 3 0; +#X connect 11 0 32 0; +#X connect 12 0 22 1; +#X connect 13 0 15 0; +#X connect 13 0 5 0; +#X connect 13 0 22 0; +#X connect 14 0 13 0; +#X connect 15 0 3 0; +#X connect 17 0 16 0; +#X connect 19 0 12 2; +#X connect 20 0 21 0; +#X connect 21 0 19 0; +#X connect 22 0 16 0; +#X connect 23 0 24 0; +#X connect 23 0 26 0; +#X connect 24 0 12 1; +#X connect 24 0 11 0; +#X connect 25 0 19 0; +#X connect 26 0 25 0; +#X connect 28 0 23 0; +#X connect 29 0 28 0; +#X connect 32 0 12 0; +#X connect 33 0 32 1; +#X connect 34 0 14 0; +#X connect 35 0 23 0; +#X connect 36 0 33 0; +#X connect 37 0 33 0; +#X connect 38 0 14 0; +#X restore 64 487 pd vframeread~; +#X text 195 486 read image with a sync-signal; +#X obj 339 57 init; +#X text 65 530 vdrawarray is documented on example-vdrawarray.; +#X text 21 21 Framestein v* family of video externals; +#N canvas 239 28 735 584 vrgb~ 0; +#X obj 389 140 vframe 320 240; +#X obj 389 171 vsig~; +#X text 9 7 vrgb~: separate red \, green and blue channels; +#X obj 240 239 vimport; +#X obj 181 188 fs.frame; +#X obj 188 77 reset; +#X obj 188 102 t b b b; +#X msg 234 77 bang; +#X msg 277 77 \; pd dsp 1; +#X obj 435 174 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1 +-1; +#X obj 389 221 vrgb~; +#X obj 389 345 vsnapshot~; +#X obj 482 327 vframe 320 240; +#X obj 482 277 reset; +#X msg 482 302 bang; +#X obj 389 387 fs.frame; +#X msg 482 379 320x240; +#X obj 427 269 *~ 1; +#X obj 571 88 phasor~ 1; +#X obj 571 112 avg~; +#X obj 571 141 < 0.5; +#X obj 571 166 * -1; +#X obj 616 141 >= 0.5; +#X obj 616 166 * 1; +#X obj 571 191 +; +#X floatatom 571 216 5 0 0; +#X floatatom 571 63 5 0 0; +#X msg 367 429 dock vrgb~ \, 25+300; +#X obj 567 360 s vcopyexample; +#X obj 389 304 vcolor~; +#X obj 389 269 *~ 1; +#X text 8 26 vcolor~: merge red \, green and blue channels; +#X msg 41 152 yska320x240.jpg \, bang; +#X connect 0 0 1 0; +#X connect 0 0 3 1; +#X connect 1 0 10 0; +#X connect 1 1 11 1; +#X connect 1 2 9 0; +#X connect 4 0 3 0; +#X connect 5 0 6 0; +#X connect 5 0 7 0; +#X connect 6 0 0 0; +#X connect 6 1 32 0; +#X connect 6 2 0 0; +#X connect 7 0 6 0; +#X connect 7 0 8 0; +#X connect 7 0 6 0; +#X connect 10 0 30 0; +#X connect 10 1 17 0; +#X connect 11 0 15 0; +#X connect 12 0 11 2; +#X connect 12 0 28 0; +#X connect 13 0 14 0; +#X connect 14 0 12 0; +#X connect 14 0 16 0; +#X connect 16 0 15 0; +#X connect 17 0 29 1; +#X connect 18 0 19 0; +#X connect 19 0 22 0; +#X connect 19 0 20 0; +#X connect 20 0 21 0; +#X connect 21 0 24 0; +#X connect 22 0 23 0; +#X connect 23 0 24 1; +#X connect 24 0 25 0; +#X connect 25 0 17 1; +#X connect 25 0 30 1; +#X connect 26 0 18 0; +#X connect 27 0 15 0; +#X connect 29 0 11 0; +#X connect 30 0 29 0; +#X connect 32 0 4 0; +#X restore 64 440 pd vrgb~ and vcolor~; +#X connect 2 0 1 0; +#X connect 2 0 12 0; +#X connect 12 0 1 1; +#X connect 13 0 1 1; +#X connect 17 0 13 0; -- cgit v1.2.1