[PD-dev] [GEM] new postrender crashes OS X
cclepper at artic.edu
Sat Dec 21 01:39:16 CET 2002
>what i want to have:
>one "class" of objects, that do image-processing (ok, we have said
>times by now...)
>All objects should be derived from "one" real class (in C++), the
>as with naming: if you really think, you won't get what you want if
>called "pix_*" instead of "yuv_*", go on, and make "pix_*" objects and !alias!
>them to "yuv_*" (with class_addcreator()).
>this should be easy, and everybody would be happy.
the only thing i can't figure out is how to make it clear which
objects work with which color space. the current method of dumping
endless error messages to the console is simply awful.
i can easily see building processing chains that don't work at all.
without some sort of feedback from GEM it will not be apparent why
these chains do nothing or don't work as expected. maybe someone can
come up with an elegant solution for this...
>now, why do i want this ? of course there are differences between
>color-space, but maybe, somebody wants this ?
>multiplying channels with scalars might have completely different results in
>YUV-space and in RGBA-space.
>But that's OK! I'd like it this way (it extends the possibilities of image-
>sometimes we might not be able to do things in a specific color-space.
>Gosh, that's ok! i do think, plenty of operations (pE. alpha-keying)
there's no alpha in yuv either, but also no luma in rgba. those are
pretty big differences to me, which require not only different coding
but also differentiation in the user interface (messaging and
arguments,etc). one of the ideas about adding yuv was to not have to
use rgb anymore
>If i have a fast processor (and in near future we all will have), conversion
>between yuv and rgba (as far as it is possible) might not be the problem any
i never assume that fast processors and high end graphics cards are
being used with GEM. the whole point of writing the yuv_* in the
first place is to have fast video on slower hardware!!
live, i use a lowly g3/400 laptop with a pathetic 8MB Rage128 chip,
and the stuff i write in GEM runs fine. in fact if it doesn't run ok
i rewrite it until it does. of course my faster boxes are nicer to
use GEM on ;)
>i don't think, that YUV is something "OS-specific".
>just some OS's support it better than others. maybe this will change.
>i'd rather prefer it like it is and introduce a "conversion on demand" object
>before the actual texturing (that will convert YUV to RGB on PC-platforms but
>not on Mac's)
conversion is fine as long as it's not relied upon heavily. the one
pix_ does all will require a bit of knowledge about yuv and rgba from
end users to get the hang of it, and the clearer these differences
are set down the shallower the learning curve. GEM needs more and
better docs anyway, so some color-space info could be rolled in to
i'm also in favor of creating a stable and experimental version of
GEM in the CVS. that way the stable version will at least be
functional, but without yuv, while we sort out everything.
More information about the Pd-dev