[Qt-embedded-interest] non-standard framebuffer device

Jeroen De Wachter jeroen.dewachter at barco.com
Fri Mar 13 15:15:59 CET 2009


Hello,

We're looking into replacing our current GUI with a Qt based one.
So far, everything's been going great.
We've had only minor trouble with cross-compiling the Qt embedded 4.5.0 
libraries and getting a small application to run.

We have, however, hit a snag concerning a frame buffer.
The monitor we are working on provides a frame buffer device to display 
a GUI, on top of video input.
To be able to show the video input behind the GUI, the frame buffer 
supports a transparent and a number of semi-transparent colors.
The transparent entries have been hard-coded (in an FPGA) into the 8 
first positions of the pallette, so the standard color cube that is 
constructed by Qt for 8-bit displays, conflicts with those settings.

I know the default palette only specifies the first 216 colors and 
allows 40 custom entries through QApplication::qwsSetCustomColors(), but 
this does not help us much as the hardware assumes the transparent 
colors are in the 8 first positions.

Can we tell the Qt framework to include these custom colors in its 
palette? and to use them in its 8 first positions?

Furthermore, I've been looking at the Qt library source code and it 
seems QLinuxFbScreen does not support transparency at all. Colors are 
always set to be fully opaque when an ioctl call is performed with an 
fb_cmap struct. The QLinuxFbScreen::set() method even lacks a 
transparancy parameter, so even QApplication::qwsSetCustomColors() can't 
set it.

Is there any way to enable transparency with a 256 color display using a 
palette? Or would we need to modify the source code?

The only other option would be to modify our FPGA configuration to use 
palette entries high enough up to match to transparent colors, but I 
think we still would not be able to get Qt to recognize these entries as 
transparent?

I'm guessing this is all very closely related to a previous message on 
the list, by the way.
http://lists.trolltech.com/pipermail/qt-embedded-interest/2009-January/000123.html

Thanks in advance,

Jeroen De Wachter
Design Engineer
Barco N.V.




More information about the Qt-embedded-interest mailing list