[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [E-devel] Premultiply or not



On Tue, 4 Jul 2006 00:47:52 GMT "jose_ogp@juno.com" <jose_ogp@juno.com> babbled:

> 
> > >	Let's agree on one thing:  The gfx operations, unless
> > > otherwise explicitly stated, will be done in premul argb color
> > > space, or a linear equivalent of it..
> > 
> > agreed - with possible FUTURE ability to use more esoteric
> > colorspaces like YUV (though frankly yuv is handled most sanley
> > by a convert to yuv first - BUT you can actually get speedups
> > combining the scale and convert at the same time)
> 
> 	Ok good, at least we're getting somewhere :)
> 
> > > 	Ok, fine.. and actually premul ayuv would be ok too since
> > > when decoded yuv is linearly related to rgb (hsv eg. is not).
> > > There's already such an interface to set imported data from yuv,
> > > and moving the 'conversion' to rgb down to the engines is fine
> > > as they may simply be able to deal with it directly, etc..
> > > That's all good, and an interface for importing yuv to image data
> > > is already there, you can extend it to cover any premul ayuv format
> > > type with no problem.
> > 
> > sure - and i would suggest we expand it to also import non-premul
> > ARGB - thats basically all i was really suggesting.  :) 
> 
> 	That would be the best way to do it, yeah :)
> 
> > > 
> > > 	Let's assume that edje has been modified to pass premul
> > > colors/data to evas, and eet saves premul data, and that evas
> > > provides premul/non-premul conversion api functions for colors
> > > data..
> > > 
> > > 	Just where exactly in e17 would there be even minor pain
> > > caused by evas being premul only?
> > 
> > every edje design (.edc's) that specifies a color for text or
> > solids, clips etc. any app that sets an object color itself.
> > there are 74 calls to evas_object_color_set in e17. e17's creation
> > of netwm icons would need to do a premul step. 54 in edje. more in
> > ewl, etk etc. etc. now with edje - do we force the .edc's to
> > specify colors in premul? if so there are (evil) 666 instances of
> > colors in e17's default theme - or do we have edje_cc convert to
> > premul on encode - or do we have edje turn into premul runtime?...
> > how far do you go?  :) 
> 
> 	Ok I looked at the e17 ones. Nearly all of them are of two
> kinds: either setting a color that's already premul (usually opaque
> white or transp black), or for defining some smart-class' color-set
> callback.
> 	Neither case needs anything done (color-set smart callbacks
> would expect premul inputs). That leaves about 6 left I think.
> 
> 	Anyway... I think it might be best to let the edc format
> stay as it is (non-premul colors), and have edje do the conversion,
> not edje_cc. If desired, a later edje can have other types and/or
> versions of 'design-formats', like edc, and one can do whatever..
> There are possibilities for things that are very interesting with
> premul colors, and having evas handle premul colors, as given, would
> allow for that.

agreed - now i have had time to mull. break the color_set - make it premul. we
have anon-premul-import for convenience, and we modify all the code we can 0
edje converts at runtime before color_set when using config valued in
the .edj. ;)

-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    raster@rasterman.com
裸好多
Tokyo, Japan (東京 日本)