X and colour management
ku.b at gmx.de
Wed Feb 9 01:00:57 PST 2005
first I will take an small look at the current situation how
applications can do colour management under X. And further try to show
differences of an X integrated colour management and an application based
colour management. I am no X developer so forgive me the regarding lack of
the used components for displaying accurate colours on an display are:
o grafic card or monitor holding 3 one dimensional video LUTs.
o colour transformations on server side exist in the Xcms API
o colour transformations inside the application, accessing an CMM in
the applications responsibility
o selfcalibrating systems (not widely used, because of costs)
Pros and cons:
benefits of an X integrated solution:
Xlib LUT API:
o putting an gamma LUT in the X server seems no problem for single monitor
systems (tested with xcalib)
Xcms (possible future):
o colour correct all ! content on screen by default
(needs to extend the Xcms API ?)
o potentially works across APIs - XV, Xinerama, normal X window ...
o hopefully well optimised (otherwise switched off by users)
o minimal programming effort for applications, which have nothing in mind
with colours, like wordprocessors
o leading to an colourimetrically consistent desktop
benefits of an application based colour management:
o possibly implement and use own algorithms, additional hardware drivers..
o provide switches for an bunch of situations, which may be overkill for X
o informational transparency and thereby control of manipulations in
colour critical work (open source only)
colour management inside and outside X shows (currently) many problems:
o no X API to transport gamma curves into the monitor LUTs over the video
cable (needed to not narrow the 8-bit limit further)
o API is not very popular
o not optimised
o not used(?)
o not ICC conform
o provides no mode for an default colour correction
application level colour management:
o multi head and similar concepts need much knowledge inside applications,
which region has which profile assigned to
o detection of hardware is currently difficult with X (no direct API ?)
The question is: will Xcms continue - how?
As the integration of colour management in applications goes on, an
coexistence of self managing and X side colour management would be nice.
The coexistence mode would be like an hole in an elsewhere Xcms colour
This allows applications to use only one colour transformation from an
colour space of choice to the displays/screens colour space.
+ development for color management
+ imaging / panoramas
+ email: ku.b at gmx.de
PS: an link to an application wich makes colour visible usage of Xcms
would be interessting (sources prefered).
More information about the xorg