[OpenICC] monitor/videocard identification (fwd)
Bob Friesenhahn
bfriesen at simple.dallas.tx.us
Tue Dec 7 07:02:27 EST 2004
On Sun, 5 Dec 2004, Sven Neumann wrote:
> Hi,
>
> Kai-Uwe Behrmann <ku.b at gmx.de> writes:
>
>> I suspect that we will end up being stuck with associating a profile
>> with a simple DISPLAY ID, with unqualified DISPLAY IDs being
>> prefixed with the current host's IP address or hostname.
>
> A display may have multiple screens and each screen may have multiple
> monitors. How would you deal with that?
The only solution which is assured to work requires extension of the
X11 APIs, X11 protocol (to support the APIs), and the frame buffer
device driver interface.
The application would tell X11 which profile describes its colorspace.
The X11 server would tell the device driver which profile describes
the colorspace of the data provided to it. The frame buffer device
driver would generate mapping tables (possibly loaded into the
hardware for performance) to convert between the application's
colorspace, and the colorspace of the attached display. If the frame
buffer device driver controls multiple display frame buffers, then it
will need to manage a translation table for each frame buffer.
Given that X11 servers do not yet support the necessary capabilities,
there still needs to be a simple mode (likely tied to the DISPLAY
identifier) to help X11 applications deal with existing servers. In
this case, the X11 application (or X11 support library) needs to
perform the colorspace transformations, or use an existing X11 server
extension to load tables to perform the colorspace transformations.
This approach does not properly support virtualized multi-headed
displays.
The assumption is always that there is one display per frame buffer.
If there is more than one display per frame buffer, then the displays
need to be internally calibrated to match each other.
Given that the world is transitioning from analog to digital (e.g.
DVI) connection to displays, it should be expected that at some point
all of the translation related to the display will move to within the
display itself in order to achieve the best color resolution. Modern
LCD displays already contain translation tables (typically 10 bit) in
order to emulate CRT gamma and support user-adjustments, but they
can't usually be updated from the host computer.
Bob
======================================
Bob Friesenhahn
bfriesen at simple.dallas.tx.us
http://www.simplesystems.org/users/bfriesen
More information about the openicc
mailing list