Where display profiles are stored, and how to load them
automatically.
Installing a display profile for your monitor is very operating
system dependent, which is why dispin -I
is a good way of taking care of all these details. On some systems
it is not the operating system itself that supports display
profiles, but individual applications, or helper programs.
Please choose from the detailed instructions below that suite your
system:
Microsoft Windows
Apple OS X
Linux/UNIX X11
On Microsoft Windows, display
profiles are typically in one of the following directories:
MS Windows Me and 98: C:\Windows\System\Color
MS Windows NT:
C:\Winnt\system32\spool\drivers\color
MS Window 2000, XP, Vista and 7:
C:\Windows\system32\spool\drivers\color
An alternative to using dispwin
-I to install your display profiles, is to use the
Display Property dialog, advanced settings, Color management tab,
and locate the profile and install it there. This in itself does
not cause the profile to be made use of anywhere in your system.
If you are using Adobe Photoshop on your system, then you can
tell it to use your monitor profile by editing the appropriate
registry key, typically "My
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\Color\Monitor\Monitor0",
to contain the name of the display profile, and then restart
Photoshop This is the simplest way of ensuring that the Adobe
calibration loader tool Adobe Gamma loads the video hardware
lookup tables from the vcgt tag, and uses the profile as its
display profile.
The adobe gamma tool can be told to use your profile, but the
procedure is slightly tricky: Open adobe gamma from photoshop (in
the Help->Color Management... menu item), select "Open Adobe
Gamma", and select the "Load.." button. Select your profile and
"Open". Select "OK" in the Adobe Gamma, it will then ask you to
save it's modified version of your profile under a different name.
Chose a name for the modified profile, and save it. Exit from
Photoshop. Copy the profile you want to use, over the modified
profile that you saved in Adobe Gamma. (If you don't do the last
step, the profile Photoshop will be using will have been modified
in strange ways from what you intended.)
Installing a profile on Microsoft Windows generally doesn't mean
that the profiles calibration will be automatically loaded into a
display on startup. A separated tool is usually needed to achieve
this.
Some Microsoft Windows applications may come with
"Gamma/VCGT/RAMDAC/Video LUT" loader tools, so consult their
documentation and check your Start Menu Startup folders. If you
don't want to use any of these 3rd party tools, you can also use
the dispwin tool to do this for you,
as it takes either a .cal or ICC
file as an argument. The xcalib tool
could also be used.
To add a startup item that will load a profiles calibration into
the display using dispwin,
use the following instructions:
On the task bar, right click and
select "Properties", then select the "Advanced" tab, then click
"Add..". then browse till you locate dispwin.exe. In the box
containing the path to dispwin.exe,
add a space then the option -L,
eg:
c:\bin\argyll\dispwin -L
If you don't want to use the default
installed profile, you could explicitly set the calibration file
to use as an argument:
c:\bin\argyll\dispwin
c:\myprofiles\mydisplay.icm
Click "Next >", select the
"Startup" folder, then name the item (ie. "Argyll Calibration
Loader"), then press "Finish".
You can test it out by simply navigating the "Start" menu to the
"Startup" folder and selecting the item you've just created. If
you want to alter any of the details, navigate to the item again
and right click it, and select "Properties". More than one startup
item can be created to set the calibration for more than one
display. You may want to cut and paste the "Target" line to a
normal Command Prompt shell to check that it works as expected, as
it is impossible to catch error messages in the startup.
Microsoft Windows XP has an
optional Microsoft Color Control Panel Applet for Windows XP
available for download from Microsoft, which handles installation
and registering of the a display profile, and will also
automatically set the display calibration on system startup. The
applet is started from the control panel, and first you have to
"Install..." the profile in the Profiles
tab, then associate it with the display in the Devices tab, but NOTE that it seems to have a bug, in that it sometimes
associates the profiles with the wrong
monitor entry!
On Microsoft Vista you can
set the display profile in
Control Panel -> Hardware and Sound
-> Color Management, as an alternative to dispwin -I. In Devices
you select "Use my settings for this
device", and then add the profile you've created.
Unfortunately
though, it doesn't use the 'vcgt' calibration curves on system
startup, so a tool such as dispwin
will still have to be used to do this. Note that currently Vista
also has a bug that causes
the calibration curves to be reset whenever the User Account Dialog
(and similar) is displayed. This problem can only be worked around
manually, by re-running the startup item whenever this happens. Note
that due to the details of this bug it is necessary to actually
reset the calibration to something else before re-setting it. This
can be done quite conveniently in dispwin by adding the -c flag: e.g.: c:\bin\argyll\dispwin -c -L
On Microsoft Windows 7 & 8
you can set the display profile by opening the Color
Management control by clicking the Start
button and then clicking Control Panel.
In the search box, type color management,
and then click Color Management.
Make sure the correct display device is selected in "Device:", and
then tick the "Use my settings for this device" box. Select "Add..."
and then "Browse..." to locate and load the profile. (Alternately
you can use the normal file browser to locate the profile, and then
right click on it and select "Install Profile". In the Color Manager
"Add..." dialog you can then select it.). Make sure that the new
profile has been marked "(default)" if you want it to be
automatically used for your display.
By default Windows 7 & 8 seems to automatically load the default
display profiles calibration on startup, but needs to be told to do
this at all other times by changing the system defaults, or if some
3rd party tool to load display calibration has been installed. This
can be done by logging on with a user account that has
administrative privileges, then opening the Color
Management (see above), and then select the "Advanced" tab, and then "Change
system defaults...", then select the "Advanced" tab, and select/un-select the "Use Windows
display calibration" check box. (You could use dispwin -I as an alternative to
this if you really wanted.)
On Apple OSX, the display profile
are in one of the following locations:
/Network/Library/ColorSync/Profiles
/System/Library/Colorsync/Profiles
/Library/ColorSync/Profiles
~/Library/ColorSync/Profiles
Note though that /System/Library/Colorsync/Profiles is only
for profiles supplied by Apple. You can use dispwin -S to select the
appropriate scope when installing a profile using dispwin -I. You can use the "System
Preferences->Displays->Color" tool to check that the profile
has been installed correctly. Note that the contents of the
description tag (the argument to the -D flag used
with the colprof tool) will
be used to identify the profile.
On Linux and other Unix style systems, there is no
universally agreed location for ICC profiles yet, although the
following locations have been suggested at various times:
/usr/share/color/icc
/usr/local/share/color/icc
~/.color/icc
although particular applications may use their own locations, such
as:
/usr/local/share/Scribus/profiles
Argyll dispwin follows uses the ucmm scheme for storing user and system
display profiles, and when a display is set to use a profile
correctly, it will follow this
convention to make it available to applications.
In addition to the _ICC_PROFILE and _ICC_PROFILE_NN X11 atom
convention mentioned above, ArgyllCMS dispwin will also set a CRTC
_ICC_PROFILE property on systems that support XRANDR 1.2 or later,
and this is the preferred way of applications obtaining a particular
displays profile for multi-display X11 setups. (See the
XRRGetOutputProperty() function for the method of getting the
_ICC_PROFILE value).
If you want the display calibration to be loaded, you should
consider installing a tool to do so at startup, such as dispwin or xcalib.
Using dispwin the currently installed
profile for a particular display can be loaded using the -L option of dispwin:
dispwin -L
which will both upload the installed profile into the root window _ICC_PROFILE
property, and also load it into the display VideoLUTs.
You can use the dispwin -d parameter in the usual way to select
other displays to store or load the calibration using the
_ICC_PROFILE property.
To do this when you start your X11 server, you could put the above
command in your .xinitrc
file in your home directory for each screen.