[Openicc] ICC Profiles in X Specification 0.4 DRAFT 2
Kai-Uwe Behrmann
ku.b at gmx.de
Thu Mar 4 11:50:36 PST 2010
The ICC Profiles in X Specification 0.4 DRAFT 2 assumedly allowes a
display colour server to completely colour manage a desktop UI based on
hardware accelerated colour corrections. (Note this does not refere to
VCGT).
It should do so in a very backward compatible manner with existent
applications. This should include tools supporting the v0.1-v0.3
of this spec as well as applications.
a updated draft can be found here:
http://www.oyranos.org/wiki/index.php?title=ICC_Profiles_in_X_Specification_0.4
I copy the discussion part from ColourWiki for your convenience:
* net-color spec support
The _ICC_PROFILE(_xxx) atom was designed for device specific ICC profiles.
However with the evolution of applications a desire arose to divide the
real device colour space from the intended document colour space. To
preserve compatibility with elder applications a ICC_PROFILE_in X Version
0.4 compatible service is allowed to move the _ICC_PROFILE(_xxx) to
_ICC_DEVICE_PROFILE(_xxx) and put a typical sRGB profile into
_ICC_PROFILE(_xxx).
Applications, which understand the net-color spec, should mark their
document regions with the _NET_COLOR_TARGET atom without the ICC profile.
The target ICC profile can be obtained by first looking inside the
_ICC_DEVICE_PROFILE(_xxx) atom(s) and if empty inside the
_ICC_PROFILE(_xxx). Otherwise they have to assume sRGB. Doing end to end
colour correction by the application is known as early colour binding. It
has the advantage of being more accurate depending of the CMM and the
pixel encoding, e.g. with 16-bit per channel image source.
The net-color spec dealing with region profiles as in the following scheme
* Xcolor region + ICC colour profile attached ==> convert Xcolor ICC
profile -> _ICC_DEVICE_PROFILE(_xxx)
can be added in a later version on desire. The git repository hosting the
net-color spec contains a example compiz plugin for that functionality.
* _ICC_PROFILE_SETUP_LOCK
What is somewhat unclear is the _ICC_PROFILE_SETUP_LOCK and
_ICC_PROFILE_SETUP atoms. It needs better commenting or should be removed.
* XRandR
That part could be more specific, in that the monitor counting in the root
window follows that counting in the Xinerama API.
I hope this draft remains open for easy further extention. If you spot
parts which does not, then your comments are very much welcome.
kind regards
Kai-Uwe Behrmann
--
developing for colour management
www.behrmann.name + www.oyranos.org
More information about the openicc
mailing list