[cairo] About YUV2RGB converstion

David Reveman davidr at novell.com
Tue Aug 9 13:44:19 PDT 2005


On Mon, 2005-08-08 at 15:26 +0800, Jackey Yang wrote:
> On 2005年6月29日 Wednesday 22:21, David Reveman wrote:
> > On Fri, 2005-06-17 at 07:39 +0000, conner.mo wrote:
> > > Dear all,
> > >
> > > Currently we only have RGB support in cario and glitz. Therefore, if we
> > > want to put videos on a cairo surface in YUV format, a software
> > > colorspace conversion has to be taken. As you can imagine, the
> > > performance is horrible. I wonder if it is possible to add a hardware
> > > accelerated conversion function in the glitz layer so that cairo can
> > > benefit from that. Thanks.
> >
> > We're working on exactly this for XVideo support in Xgl. We actually
> > have some working code for this, it just needs to be cleaned up and some
> > minor issues need to be resolved before we can get it into CVS.
> How is Xgl now? This problem contributes a huge overhead into our xine-based
> plug-in. Running Xine with xv, it only has 6% cpu load (full-screen). With 
> yun2rgb converting in Cairo and Glitz, cpu load is up to 6 times or more.
> 
> Any idea or suggestions?

glitz will eventually have support for YUV surfaces and colorspace
conversions will be done by the GPU using fragment programs when
available.

You'll be able to use these YUV surfaces in cairo as any other glitz
surface. If you have a plugin that is doing software yuv2rgb conversion
and then glitz/cairo for transforming the RGB data, it should be easy to
switch to using glitz's YUV surfaces once they are available.

-David




More information about the cairo mailing list