VMware Communities
TIP4VM
Contributor
Contributor

Color Calibration of Monitor - in Host or in Guest?

Hello,

as a photographer I am used to having my monitors calibrated and color managed, so I can trust the colors I am seeing.

Recently then I have switched to working on a virtual machine:

Host: Window Server 2008 R2 64-bit

Guest: Windows 7 Ultimate 64-bit (with VMWare Tools installed)

VMWare: Workstation 7.1.1 build-282343

With this setup, I am unclear though, where the monitor color calibration should happen and how to set it up correctly.

I have a calibration device (GretagMacbeth eye-one display2) and a calibration software (basICColor display 4), which takes care of the

calibration and generates a color profile.

Do I need to run and install the calibration software on the host, and then copy the generated color profile to the Win 7 VM ?

Or what is the correct approach to obtain reliable and faithful color reproduction in the environment described above?

Thanks in advance for your help!

Regards,

TIP4VM

0 Kudos
4 Replies
newbie93
Hot Shot
Hot Shot

Dear TIP4VM,

Welcome to the forums.

As a photographer using VMWare for many years now, I will save you some research... Up to and including the latest version of Workstation (7.1.1):

VMWare's video driver (used inside the VM) doesn't support external LUTs (Color Look Up Tables). This means color calibration software, even if it works in the vm, the resulting ICC profile won't load in a VM. In my case, I could get the color profiler software to run inside the vm, but it wouldn't load the profile afterwards.

My first attempt was to profile by running the profiling software on the host, but running the sensor "inside" the vm's display (to use vm's default LUT) and generate a profile based on that. In this case the profile would be loaded on the host. This seems to work as long as 1) The vm display is set to full screen and 2) you never change the resolution of the host or the vm. If either of those change, the profile won't be accurate. You can try this yourself and then see if it's repeatable. There is a side effect in that the colors on the host (not inside the vm) will not be accurate.

I have since moved away from this and now just run my photography software and profiling software on the host only. Until VMWare supports loading external LUTs in their video driver, it's just not worth the effort. You can do a search for my name in the posts. I informed VMWare about this problem several years ago, but it doesn't seem to be a high priority for them. For each new version of Workstation, I check to see if it's fixed and it's not. I was really hopeful when they announced aero support (for 7.x), but it appears they can support directX 10 with Shader 2.0 support w/o implementing LUT's. I keep hoping.

I used to run XP host/ XP vm. I now run Win7/64 host and do some post processing work in a vm (the non-color critical stuff).

I originally had a Spyder II. I now use a ColorMunki Photo. Awesome product BTW.

Good luck,

-B

0 Kudos
TIP4VM
Contributor
Contributor

Dear newbie93,

thanks for your reply and sharing your findings.

To put it in your own, past words: Not really the answer I was hoping for...

The term "VMWare Workstation" would seem to imply it can be used as such, and I like the virtual approach, but find it annoying to keep running into various limitations.

It would be nice if VMWare integrates support for LUTs, so proper calibration can be achieved.

To do color critical work in the host instead unfortunately is not really an option in my workflow, and I would need to do all in the guest.

At the upcoming photokina trade fair I anticipate having a chance to speak to the software engineers of the calibration software and will pass on your conclusions. I am curious what they suggest to do, and will report, if there is another workaround.

Thanks very much for now.

Maybe VMWare could comment as well and give a roadmap? OpenGL is already supported which is nice in operating Photoshop.

Regards,

TIP4VM

0 Kudos
TIP4VM
Contributor
Contributor

Well, here is an update:

At the photokina fair I had a chance to speak with Eizo and the developer of the calibration software I use (display 4 from Basiccolor) and they gave me all the necessary tips to get things running in my environment:

All calibration happens in the VM only. This is where the calibration software is installed, and the drivers for the "hardware calibratable" monitor need to be installed as well (reason detailed below).

The Video LUTs written by the calibration software are managed by Windows 7 and are registered with the graphic card (from what I understood).

Since VMWare supports dual monitors, there are separate Video LUTs written, one per monitor.

The one for the "hardware calibratable" monitor is linear, since the actual LUT gets written to the monitor directly, not to the graphic card.

The one for the secondary monitor (no hardware calibration) is written to the graphic card and is handled by the OS.

The two video LUTs do not interfere with each other - they don't mess each other up in any way.

Following a collection of other notes that I made in the process:

  • In Device Manager, my Eizo
    CG243W showed up as Generic Non-PnP Monitor - this told me I was missing the driver

    • Right click > Update Drivers Software >
      Browse my Computer for Driver Software
      > Let me pick from a list
      > Choose Generic PnP
      monitor > Have disk. Browse to Eizo Drivers

    • For my secondary Iiyama Monitor,
      there is no 64-bit driver available. So I still went through the above procedure
      and chose Generic Pnp Monitor (instead of Non-Pnp)

  • After installing the driver,
    this also made the Eizo USB connection visible in the VM USB Connection menu. (The integrated USB hub as such was already visible and usable before, but it still needed the
    driver...)

  • Having done this, the
    hHardware calibration dialog was now visible as an option in the Basiccolor software.

    • The USB Connection is
      necessary so the Color Software can amend the Hardware LUTs stored in the monitor!!!

  • Before new calibration with
    Display 4: make hardware reset via OSD

This is all working now.

If you'd also want correct colors in the host, you should only have to take the color profile generated by the calibration software and applied in the guest and copy it to the host, and making it the default there. Since the actual LUT is written in the monitor hardware, color should be correct there as well.

Hope this helps someone - Happy color managing!

TIP4VM

0 Kudos
TIP4VM
Contributor
Contributor

For hardware calibratable monitors, just install the driver and do all calibration within the VM. Seems to be working in my case.

0 Kudos