[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-xorg
Subject:    Re: how to display a XImage with 16bits depth in a drawable with a
From:       Glynn Clements <glynn () gclements ! plus ! com>
Date:       2009-02-27 21:26:51
Message-ID: 18856.23195.204596.287250 () cerise ! gclements ! plus ! com
[Download RAW message or body]


hd wrote:

> I my app, I receive a raw image in 16 bits depth.
> My defaut visual have a depth of 24 bits (and all other Visual have 24 
> or 32bits depth on my X server).
> 
> To display the bitmap I try to create an XImage with XCreateImage() and 
> display it with XPutImage().
> But X displays a "bad match" error
> 
> If I try to display a "raw image" with the same depth (24bits) as the 
> visual (24bits), my app works.
> 
> Question : XImage APIs (XCreateImage() / XPutImage() / ...) can convert 
> 'on the fly' the depth of the bitmap to match the visual depth
> or must I convert myself the raw bitmap to match the visual depth ? 
> (convert each pixel from 16bits to 24 bits)

You must convert yourself, or use a higher-level interface. The core X
protocol doesn't do format conversions.

If you want the conversion to be done in hardware, look at OpenGL or
XRender. It's implementation-dependent whether either of these
supports a specific format (other than 24-bit RGB), so you still need
to provide a software conversion.

-- 
Glynn Clements <glynn@gclements.plus.com>
_______________________________________________
xorg mailing list
xorg@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/xorg
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic