[argyllcms] Re: telling X11 about location of display profile.

  • From: Leonard Evens <len@xxxxxxxxxxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Thu, 11 Dec 2008 00:21:37 -0600

On Thu, 2008-12-11 at 14:59 +1100, Graeme Gill wrote:
> Leonard Evens wrote:
> > I thought dispwin -L xxxx.icc loaded the vgct into the video card LUT.
> 
> Yes it does, but note that xxxx.icc is being ignored.
> 
> > What I want to do is allow an application such as gimp to query the
> > system (X server?) to find out which profile to use.
> 
> dispwin -L does that as well. It makes the installed profile the
> current profile.
> 
> By "installed" I mean the persistently configured profile.

I am still confused. And I think it must be about some very basic point.
I keeping reading explanations and the words don't seem mean what I
thought they did.

How does the system know what the "persistently configured profile" is?
Where is it or its location stored?

As I understand it, when I first login, thus restarting X, my system
doesn't know anything about a profile and the video card has whatever
its default LUT is.  I can run xcalib (or dispwin) to load the vgct part
of the profile xxxx.icc in the Video LUT.  If I want an application such
as gimp to use the profile in xxxx.icc, I have to tell it where to find
it.  gimp gives me two ways to do that.  I can specify the file
xxxx.icc, or prior to running gimp, I can set _ICC_PROFILE and then tell
gimp to get the display profile from the system.  I don't know what
happens with other applications, which supposedly can make use of that
atom.

As far as I can see, if I just run dispwin -L (no argument), my system
won't know how to set _ICC_PROFILE.

I suppose dispwin -L (no argument) could look in some standard location
such as ~/.color.  Is that what happens?

> 
> By "current" I mean, "being the profile currently in use".
> 
> Note that both the Video LUT values and the X11 atom are not
> persistent - they disappear when the X11 server and video drivers stop.
> 
> > The documentation seems to say that dispwin -I xxxx.icc does that, and
> > presumably also loads the vgct in the video card LUT. 
> 
> Yes. It both installs the profile (Records it persistently as
> the associated profile for that display), and then makes that
> profile the current profile (calibration set in the Video LUT on the
> video card, and _ICC_PROFILE atom set to that profile).
> 
> dispwin -L just does the last bit.
> > I tried that and
> > when I run
> > 
> > xprop -root | grep ICC
> > 
> > I get a whole line starting 
> > ICC_PROFILE(CARDINAL) = 
> > followed by a long list of Are those numbers the profile?.
> 
> Yes, they are the ICC profile. The beauty of this is that the profile
> will be available to remote applications.
> 
> > Also Clemens Beisch suggested I do a google search on
> > XICC fedora
> > and when I did that I found the answer to the same question when I had
> > asked it previously.   But that told me to use xicc for this purpose.  I
> > can't find any program called xicc.
> 
> Perhaps this <http://packages.debian.org/unstable/x11/xicc> ?
> 
> It's unlikely that xicc has a concept about the currently
> installed profile though.
> 
> Graeme Gill.
-- 
Leonard Evens <len@xxxxxxxxxxxxxxxxxxxxx>
Mathematics Department, Northwestern University


Other related posts: