On Tue, 24 Jul 2012 05:21:08 -0400 (EDT) david.obo...@aliceadsl.fr said:

> I don't think so, the source is 32bit, so we advance 4 bytes (for the source)
> and we choose 1 bytes for each color (and write it in the destination), the
> endianness make sens when we write from source to destination.

those R_VAL etc. macros handle edianess already - evas's rgb vormat is fixed in
memory. per pixel its an int (4 bytes) with MSB being A, LSB being B. if you
address it as an int and bitshift u never have to care about endianness. if u
access byte by byte you do. the output is byte-based. you swapped the output in
your patch and as such there are 2 diferent routines to deal with the 2
orderings for output - RGB or BGR (byte-by-byte order).

> here is the RGBA result of fbset:
>    rgba 8/16,8/8,8/0,0/0
> 
> and evas detect a RGB format
> 
> ----- Mail original -----
> De: "Carsten Haitzler" <ras...@rasterman.com>
> À: "Enlightenment developer list" <enlightenment-devel@lists.sourceforge.net>
> Cc: "david oboeuf" <david.obo...@aliceadsl.fr>
> Envoyé: Mardi 24 Juillet 2012 10:27:44
> Objet: Re: [E-devel] Patch for endianness conversion
> 
> On Tue, 24 Jul 2012 03:32:25 -0400 (EDT) david.obo...@aliceadsl.fr said:
> 
> > Hi everybody,
> > 
> >   I work actually on a set-top-box little endian with a 24-bit depth
> > framebuffer (evas version 1.2.1). I noticed there are no conversion between
> > little endian and big endian (my color was inverted). I propose a patch to
> > handle the endianness for this depth (I test only the
> > evas_common_convert_rgba_to_24bpp_rgb_888 fonction).
> 
> hmm this is wrong. as its writing 1 byte at a time and advancing 3 bytes  a
> time this has nothing to do with endianess. your 24bit framebuffer (unusual
> these days) is literally BGR nor RGB. not an endianess matter (it would be if
> we were writing int's (32bits) at a time). :)  ie uw ant to be using
> 
> evas_common_convert_rgba_to_24bpp_rgb_888()
> 
> instead of
> 
> evas_common_convert_rgba_to_24bpp_bgr_888()...
> 
> or the other way around - i have no idea which one is being used in your case
> - but something is telling the evas convert subsystem to use  the wrong 24bpp
> format for your hardware. :)
> 
> -- 
> ------------- Codito, ergo sum - "I code, therefore I am" --------------
> The Rasterman (Carsten Haitzler)    ras...@rasterman.com
> 
> 
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and 
> threat landscape has changed and how IT managers can respond. Discussions 
> will include endpoint security, mobile security and the latest in malware 
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to