[Openicc] VMs and display correcotions

Chris Murphy lists at colorremedies.com
Wed Mar 9 02:54:36 PST 2011



On Mar 9, 2011, at 3:38 AM, Richard Hughes wrote:

> On 9 March 2011 10:18, Chris Murphy <lists at colorremedies.com> wrote:
>> If each remote display instance is as if the guest OS has different displays attached, then those remote displays should inherit the display profile for the display the remote display window is drawn on.
> 
> If the host-generated EDID was modified to include the details of the
> hosts active display this would allow the user to select different
> profiles for each display it's being displayed on.

Certainly in the case of Windows (hosts and guests) that whole paradigm is defaulting to sRGB which is the same as /DeviceRGB. So there is no conversion.

On Mac OS, /DeviceRGB is assumed to be sRGB or Display RGB depending on the context. So it's possible to get system level display compensation even if the application doesn't support it and hasn't informed the OS of anything.

Virtualization is sufficiently complex (but at least the guests are limited to a very small palette of video card "virtualware") that it very likely means the responsibility is going to be up to the host to implement its own windows correctly on the platform it's running on. And then for remote display - I haven't even attempted it. I don't know what software is used. Is it typically just another copy of that VM software and a VNC like connection is established?

VNC - another issue.

We have two competing scenarios for users to choose from which is basically accuracy vs performance. The performance option is /DeviceRGB and no display compensation. There is a simple middle ground option of assuming the guest is sRGB and the host and remote display instances doing display compensation, but at the moment I'm thinking that's useless. Most people will want strict performance or strict accuracy not limited to sRGB especially if they have a wide gamut display. So that calls for the guest apps being aware of the wide gamut display's behavior and doing display compensation. Which then does a pass through to the host's display (or remote display) - problem is those apps are platform specific and need to be made aware of how those OS's behave which are all different.

And actually now that I think about it, the VM application needs to be in sync in some cases with the settings of the guest. At least with VirtualBox this isn't happening. I don't know about libvirt as I haven't tried it yet.


Chris Murphy


More information about the openicc mailing list