aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJamie Tittle <tigital@users.sourceforge.net>2005-04-12 03:34:40 +0000
committerJamie Tittle <tigital@users.sourceforge.net>2005-04-12 03:34:40 +0000
commit92968aae5d263a87ce59a987ae962df9e2f12a03 (patch)
treea585bc6d58d8705ca94c84b6f0572881eac685b7
parentf198fa87788161da7d491787cfabccc0cb63b0df (diff)
added colorspace message which allows us to select the destination colorspace (YUV, RGB/BGR, RGBA/BGRA); now uses GemPixUtils color conversions to centralize the code
svn path=/trunk/externals/gem2pdp/; revision=2714
-rw-r--r--README12
-rw-r--r--help-pdp2gem.pd216
2 files changed, 128 insertions, 100 deletions
diff --git a/README b/README
index f632113..dacd778 100644
--- a/README
+++ b/README
@@ -1,7 +1,8 @@
*****************************************************************************
-copyleft 2003 by Yves Degoyon ( ydegoyon@free.fr )
+copyleft 2003-2005 by Yves Degoyon ( ydegoyon@free.fr )
-tarballs and updates available @ http://ydegoyon.free.fr
+tarballs and updates available @ http://ydegoyon.free.fr
+osx versions available @ http://homepage.mac.com/tigital
gemp2pdp : GEM to PDP bridge
@@ -18,3 +19,10 @@ patents.
*****************************************************************************
+notes:
+
+- now allows you to select the colorspace that pdp's yv12 image format is converted to. This means we can now request a YUV colorspace, which is computationally much faster than yv12 to RGB or RGBA (so much so that it is the default). Colorspace can be indicated on object creation (ie. [pdp2gem RGB]) or by message (ie. [colorspace YUV<)
+
+- now uses standardized color conversions found in GemPixUtil.cpp, which includes altivec speedups! These use formulae from http://www.poynton.com/notes/colour_and_gamma/ColorFAQ.html#RTFToC30
+
+- please note that colorspace switching between objects is handled automatically by GEM unless specifically stated (ie. by [pix_yuv], [pix_rgba], [pix_grey]) \ No newline at end of file
diff --git a/help-pdp2gem.pd b/help-pdp2gem.pd
index d2b5253..2b1f8eb 100644
--- a/help-pdp2gem.pd
+++ b/help-pdp2gem.pd
@@ -1,107 +1,127 @@
-#N canvas 222 41 827 508 12;
-#X obj 526 366 gemwin;
-#X msg 523 304 create;
-#X msg 530 329 destroy;
-#X obj 608 334 tgl 15 0 empty empty empty 20 8 0 8 -262144 -1 -1 0
-1;
-#X obj 90 391 pix_texture2;
-#X obj 90 297 pix_rgba;
-#X msg 231 321 -1 -2 -1 -2 8 -2 1 -2 1;
-#X obj 90 358 pix_convolve 3 3;
-#X obj 91 272 tgl 15 0 empty empty empty 20 8 0 8 -262144 -1 -1 0 1
-;
-#X floatatom 153 440 5 0 0 0 - - -;
-#X obj 72 201 gemhead;
-#X text 67 230 ============================================================
-;
-#X text 69 178 ============================================================
-;
-#X text 365 449 pdp2gem : pdp to gem bridge;
-#X text 365 467 written by Yves Degoyon (ydegoyon@free.fr);
-#X text 369 278 GEM field;
+#N canvas 100 128 824 539 10;
+#X obj 30 6 cnv 15 740 120 empty empty empty 20 12 0 14 -233017 -66577
+0;
#X obj 132 67 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
-1;
-#X msg 118 102 loop \$1;
-#X obj 96 105 tgl 15 0 empty empty empty 20 8 0 8 -262144 -1 -1 0 1
+#X msg 136 100 loop \$1;
+#X obj 117 99 tgl 15 0 empty empty empty 20 8 0 8 -262144 -1 -1 0 1
;
-#X msg 194 39 open \$1;
-#X obj 106 38 openpanel;
-#X obj 77 39 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+#X msg 197 58 open \$1;
+#X obj 197 38 openpanel;
+#X obj 176 38 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
-1;
-#X floatatom 284 71 5 0 0 0 - - -;
+#X floatatom 268 67 5 0 0 0 - - -;
#X msg 156 68 stop;
-#X obj 202 68 metro 70;
-#X obj 637 119 pdp_v4l;
-#X obj 637 93 metro 70;
-#X obj 688 61 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
--1;
-#X msg 637 61 stop;
-#X obj 197 100 pdp_yqt;
-#X obj 267 100 dac~;
-#X text 653 37 Live;
-#X text 322 9 PDP field;
-#X text 368 202 pdp2gem must be inserted in GEM's rendering chain;
-#X obj 287 202 pdp2gem;
-#X obj 475 130 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
-1;
-#X obj 501 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+#X obj 198 79 metro 70;
+#X text 40 9 PDP field;
+#X text 146 16 Play a movie (.mov);
+#X text 75 64 Start;
+#X obj 197 100 pdp_qt;
+#X obj 30 255 cnv 15 740 250 empty empty empty 20 12 0 14 -101120 -66577
+0;
+#X msg 304 293 -1 -2 -1 -2 8 -2 1 -2 1;
+#X obj 197 317 pix_convolve 3 3;
+#X floatatom 232 448 5 0 0 0 - - -;
+#X text 365 449 pdp2gem : pdp to gem bridge;
+#X text 365 467 written by Yves Degoyon (ydegoyon@free.fr);
+#X text 41 267 GEM field;
+#X obj 197 375 rotateXYZ;
+#X obj 325 358 metro 10;
+#X obj 292 379 + 1;
+#X obj 291 359 f;
+#X msg 325 379 bang;
+#X obj 198 446 cube;
+#X obj 197 350 pix_texture;
+#X obj 173 301 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
1;
-#X obj 525 131 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
+#X obj 326 339 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
1;
-#X text 81 12 Play a movie (.mov);
-#X text 75 64 Start;
-#X obj 450 156 pdp_cycle;
-#X floatatom 185 416 0 0 0 0 - - -;
-#X obj 90 416 rotateXYZ;
-#X obj 298 414 metro 10;
-#X obj 223 415 + 1;
-#X obj 264 415 f;
-#X msg 383 414 bang;
-#X obj 436 414 loadbang;
-#X obj 90 440 cube;
-#X obj 449 95 pdp_spigot;
-#X obj 539 71 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
+#X obj 197 422 translateXYZ;
+#X floatatom 219 399 5 0 0 0 - - -;
+#X floatatom 292 424 5 0 0 0 - - -;
+#X floatatom 265 398 5 0 0 0 - - -;
+#X obj 656 271 cnv 15 100 60 empty empty empty 20 12 0 14 -195568 -66577
+0;
+#N canvas 0 22 454 304 gemwin 0;
+#X obj 131 164 gemwin;
+#X obj 67 89 outlet;
+#X obj 67 10 inlet;
+#X obj 67 41 route create;
+#X msg 67 70 set destroy;
+#X msg 142 68 set create;
+#X msg 198 112 destroy;
+#X msg 131 140 create \, 1 \, lighting 1;
+#X obj 298 149 world_light;
+#X obj 298 122 gemhead;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 3 0 7 0;
+#X connect 3 1 5 0;
+#X connect 3 1 6 0;
+#X connect 4 0 1 0;
+#X connect 5 0 1 0;
+#X connect 6 0 0 0;
+#X connect 7 0 0 0;
+#X connect 9 0 8 0;
+#X restore 661 309 pd gemwin;
+#X msg 661 290 create;
+#X text 657 270 Create window:;
+#X obj 30 129 cnv 15 740 120 empty empty empty 20 12 0 14 -260818 -66577
+0;
+#X text 67 230 ============================================================
;
-#X connect 1 0 0 0;
-#X connect 2 0 0 0;
-#X connect 3 0 0 0;
-#X connect 4 0 42 0;
-#X connect 5 0 7 0;
-#X connect 6 0 7 2;
-#X connect 7 0 4 0;
-#X connect 8 0 5 0;
-#X connect 9 0 48 1;
-#X connect 10 0 34 0;
-#X connect 16 0 24 0;
-#X connect 17 0 29 0;
-#X connect 18 0 17 0;
-#X connect 19 0 29 0;
-#X connect 20 0 19 0;
-#X connect 21 0 20 0;
-#X connect 22 0 24 1;
-#X connect 23 0 24 0;
-#X connect 24 0 29 0;
-#X connect 25 0 49 0;
-#X connect 26 0 25 0;
-#X connect 27 0 26 0;
-#X connect 28 0 26 0;
-#X connect 29 0 49 0;
-#X connect 29 3 30 0;
-#X connect 29 4 30 1;
-#X connect 34 0 5 0;
-#X connect 35 0 40 1;
-#X connect 36 0 40 2;
-#X connect 37 0 40 3;
-#X connect 40 0 34 0;
-#X connect 41 0 42 1;
-#X connect 41 0 42 2;
-#X connect 42 0 48 0;
-#X connect 43 0 45 0;
-#X connect 44 0 45 1;
+#X obj 118 177 gemhead;
+#X text 370 150 pdp2gem must be inserted in GEM's rendering chain;
+#X text 68 137 ============================================================
+;
+#X msg 218 197 colorspace YUV;
+#X obj 196 215 pdp2gem;
+#X msg 214 177 colorspace RGB;
+#X msg 209 154 colorspace RGBA;
+#X text 369 176 the colorspace indicates what format to transform pdp's
+native YV12 to...YUV is default (and fastest);
+#X obj 420 98 pdp_v4l;
+#X obj 420 72 metro 70;
+#X obj 471 40 bng 15 250 50 0 empty empty empty 20 8 0 8 -262144 -1
+-1;
+#X msg 420 40 stop;
+#X text 436 16 Live;
+#X text 379 481 and James Tittle (tigital@mac.com);
+#X connect 1 0 9 0;
+#X connect 2 0 13 0;
+#X connect 3 0 2 0;
+#X connect 4 0 13 0;
+#X connect 5 0 4 0;
+#X connect 6 0 5 0;
+#X connect 7 0 9 1;
+#X connect 8 0 9 0;
+#X connect 9 0 13 0;
+#X connect 13 0 44 0;
+#X connect 15 0 16 2;
+#X connect 16 0 27 0;
+#X connect 17 0 26 1;
+#X connect 21 0 30 0;
+#X connect 22 0 24 0;
+#X connect 23 0 24 1;
+#X connect 24 0 23 0;
+#X connect 24 0 21 2;
+#X connect 24 0 21 1;
+#X connect 25 0 22 0;
+#X connect 27 0 21 0;
+#X connect 28 0 16 0;
+#X connect 29 0 22 0;
+#X connect 30 0 26 0;
+#X connect 31 0 30 1;
+#X connect 32 0 30 3;
+#X connect 33 0 30 2;
+#X connect 35 0 36 0;
+#X connect 36 0 35 0;
+#X connect 40 0 44 0;
+#X connect 43 0 44 0;
+#X connect 44 0 16 0;
#X connect 45 0 44 0;
-#X connect 45 0 41 0;
-#X connect 46 0 43 0;
-#X connect 47 0 46 0;
-#X connect 49 0 34 0;
-#X connect 49 1 40 0;
-#X connect 50 0 49 1;
+#X connect 46 0 44 0;
+#X connect 48 0 44 0;
+#X connect 49 0 48 0;
+#X connect 50 0 49 0;
+#X connect 51 0 49 0;