[Bug 660528] kate: rendering performance improvements

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Oct 4 03:25:27 PDT 2011


https://bugzilla.gnome.org/show_bug.cgi?id=660528
  GStreamer | gst-plugins-bad | unspecified

Sebastian Dröge <slomo> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |slomo at circular-chaos.org

--- Comment #10 from Sebastian Dröge <slomo at circular-chaos.org> 2011-10-04 10:25:20 UTC ---
(In reply to comment #8)

> > @@ +183,3 @@
> >  #define TIGER_VIDEO_CAPS \
> >      GST_VIDEO_CAPS_xRGB ", endianness = (int)1234; " \
> > +    GST_VIDEO_CAPS_BGRx ", endianness = (int)4321;" \
> > 
> > Erm, you shouldn't specify endianness here. GST_VIDEO_CAPS_xRGB and friends
> > already include this field with the correct value.
> > 
> > Note that xRGB with endianness 1234 would be the same as BGRx with endianness
> > 4321. And that we only use big endian endianness for 24/32 bpp RGB formats in
> > the caps anyway and specify the order of components with the masks.
> 
> So, xRGB would have the same endianness on both little and big endian machines
> ?
> Meaning, a color with 0 everywhere but 255 as red would be not the same value
> when interpreted as int on both archs ?
> I want to be really sure as I use Cairo to render, and Cairo stores its colots
> in host endianness ARGB, so I need to match its format.

The GStreamer definitions are endianness independent. xRGB gives the byte
order, i.e. first byte x, second byte R, third byte G and fourth byte B. In
Cairo this is slightly different by saying that ARGB has A in the 8
most-significant bits, etc.

On little endian systems cairo's ARGB32/RGB24 maps to BGRA, BGRx in GStreamer
and on big endian system it maps to ARGB and xRGB. Don't worry about the
endianness fields in the caps, it's meaningless for >=24bpp RGB formats.

Does this answer your question? :)

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list