[Openicc] multi monitor ICC X configuration
Kai-Uwe Behrmann
ku.b at gmx.de
Wed May 3 07:58:32 PDT 2006
Hello all,
multi monitor configurations are quite common in the workstation world.
They should be better supported by us colour people.
I extended the _ICC_Profile atom from Ross Burton [1] to cover more than
one screen in a Xinerama configuration. Goal is to provide the means to
handle the EDID info as well as the profile information in the X server
[2]. Therefore the _ICC_Profile and XFree86_DDC_EDID1_RAWDATA atoms are
appended with a underscore + the screen number if the screen number is
greater than zero.
Thus a _ICC_Profile and XFree86_DDC_EDID1_RAWDATA atom name remains
original for the traditional one screen per root window configurations.
The number of screens per root window can be detected by the Xinerama X
extensions.
The Oyranos monitor API handling the ICC configuration is extended by a
function:
int oyGetScreenFromPosition (const char *display_name,
int x,
int y);
which returns the screen number.
Oyranos expects now the display.screen notation, even if X is Xinerama
configured. This may be a bit confusing, as I am not shure if other apps
handle the issue the same way.
In the current development version all works fine for detecting the right
monitor and quering the appropriate ICC profile from X in ICC Examin.
Currently in my configuration I have to call a helper application at
X start time, which detects a used nvidia card and reads the EDID info.
After that the info is put into the X server followed by the ICC profile
configured with Oyranos. The changes will be included in Oyranos 0.1.5 and
ICC Examin 0.40.
Nvidia currectly dont writes anything in a twinview called configuration
situation.
I hope with the supposed sheme it is possible to fill the hole, making my
workaround, to ask for EDID through a non standard API, obsolete.
regards
Kai-Uwe Behrmann
+ development for color management
+ imaging / panoramas
+ email: ku.b at gmx.de
+ http://www.behrmann.name
[1] http://www.burtonini.com/computing/x-icc-profiles-spec-0.1.html
[2] https://bugs.freedesktop.org/show_bug.cgi?id=3910
More information about the openicc
mailing list