colour managed KWin

Kai-Uwe Behrmann ku.b at
Sun Feb 20 19:16:53 GMT 2011


the kde-usability people on IRC suggested me to write here about a project 
idea around kwin.

in short:
KWin would be great to support ICC colour profiles in order to colour 
correct the complete desktop in hardware.

Through KWin's shader plugins it is possible let the GPU colour correct 
all windows on the fly. Thats extremly efficient. Background images, 
icons, all windows of all toolkits (including native Xorg), inclusive 
movie playing, games and so on would be colour managed for each monitor.
The desktop would we assumed to be in sRGB, the standard internet colour
space. That is what nearly all theme and application designers choose 
their colours from.

To do it properly, the net-color spec[1] should be supported along side. 
It covers a communication protocol to talk to the desktop colour server and 
tell it, which regions in a window shall not be colour corrected. Thats 
important for applications like Scribus, Krita and Inkscape. They can then 
do their own colour management in one go and bypass sRGB. sRGB can become 
a bottleneck for wide gamut monitors or for calibration during ICC profile 

The whole thing can be made completely automatic. This is demonstrated 
with a recently published LiveCD[2]. It starts without knowing anything 
about the attached monitor into a full colour managed desktop with Compiz. 
Techically it asks for the EDID data from the monitor to get the proper 
colorimetry and creates a ICC profile on the fly. This is often not 
perfect, but it is a great improvement over no colour correction. Btw. it 
is on an other OS daily practice for hot plugged monitors. Most image 
content is sRGB. So most users will benefit very much.

It would be great to get feedback here and figure out if and how this 
project could come in live.

about me:
I am a opensource colour management consultant, developer and freelancer. 
On different projects I worked on the colour management side. My actual 
focus are proposals and data sets on the OpenICC project[3] and a 
according implementation in the open source Oyranos colour management 
system [4] and other smaller components.

about Oyranos
The goal with Oyranos is to obtain automatic colour management for many 
device classes. In Oyranos the most mature state is reached for displays 
on Xorg and Quarz. It would be cool to extent this to WCS, Android and get 
the other device classes to a similiar level. Automatic means in this 
context, no interaction of end users shall be needed. Manual preferences 
keep priorised for experts. Oyranos is packaged for some RPM based 
distributions [5]. The Oyranos project captures most of my free time ;-)

kind regards
Kai-Uwe Behrmann
developing for colour management +
oy is in #openicc and #kde-devel @ freenode


More information about the kde-core-devel mailing list