GSoC CM collaboration

Kai-Uwe Behrmann ku.b at
Sun Mar 2 21:30:03 PST 2008

Am 03.03.08, 11:00 +1100 schrieb Graeme Gill:
> Stephane Marchesin wrote:
> > You certainly can't do something that flexible at the driver level:
> > the hardware does not allow it. 
> Actually, current GPU hardware does allow for this rather well.
> > you also cannot modify the pixmap
> > contents because the application still expects to find its data as it
> > wrote it. And you don't want to modify every application, of course.

Two (new) things are needed,
- a opt out flag for colour correction down the path, so applications can 
  handle colour management on their own
- a ICC profile container attached to window content
- the virtually thierd is that every other content is expected as sRGB as 
  is the case today

This would fit along all the path
application -> toolkit -> composite manager -> OpenGL -> shader.
There remains to find an endpoint where most paths meet.

> > The solution might "simply" be to write a compositing manager that
> > does whatever lookup you want. Fairly recent X.Org versions allow
> > that.
> That would be one approach if you need to maintain pixmap contents
> to allow application readback. Of course the color space affects
> composition, so ideally you need to convert all the different
> colorspaces into an additive space, compose, and then convert
> into the monitor space for display. This may not be viable
> for interactive systems currently, but having the GPU color
> convert into monitor space during composition sure seems feasible
> with modern hardware. All you need is some standards as to
> how it is to be managed, and an implementation :-) :-)

Finding somene, who takes over such a project was the initial intention 
for this thread. Integrating this stuff in a compositing manager or 
creating a thin layer, which can be reused by several such managers would 
be nice. I, and probably others as well, would be glad to help on the 
colour management side of such a project.

> The other approach is for this all to be the applications problem.
> This is the conventional approach, the application calling on
> a CMM (Color Management Module) for access to the color profiles,
> to do profile linking, and provide the necessary pixel conversion machinery.

In addition to this, then the application should be able to opt out for 
colour management down the rendering path.

> Graeme Gill.

kind regards
Kai-Uwe Behrmann
developing for colour management +

More information about the xorg mailing list