[argyllcms] Re: sRGB.icm changed in Argyllcms 1.6.1

  • From: Elle Stone <ellestone@xxxxxxxxxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Tue, 28 Jan 2014 10:55:49 -0500

On 01/23/2014 08:26 AM, Graeme Gill wrote:
Elle Stone wrote:
You probably need to look at the code to see if LCMS2 is actually using
the quantized chad internally.
I don't think it does.

The inverse chad matrix times your quantized adapted primaries from the 
modified sRGB.icm
profile produces these "pre-quantized" unadapted sRGB primaries:

red:   0.412386137 0.212595245 0.019302145
green: 0.357571891 0.715199438 0.119205222
blue:  0.180498857 0.072204328 0.950539645

Yep, that should work, although (as a consequence of above) you should
use the inverse of the full precision chromatic matrix.
You are right, for sRGB it makes no difference, both ways produce the same pre-quantized primaries. But AdobeRGBcompatible prequantized primaries need to be calculated using the unquantized chromatic adaptation matrix.

I looked at the quantizeRGBprimsS15Fixed16 function in your icc.c source code. 
That's
really cool and greatly, greatly appreciated that your profile-making code 
deals with
quantization issues.
Is there sample code showing how to use Argyllcms/ICCLib to make quantized RGB working space profiles? I found lutest.c, which I've been working on modifying, but modifying it is not easy! and getting the modified code to produce a profile requires recompiling everything with jam.

It does, only because you drew attention to the problem with a specific example.
A sharp-eyed reader of one of the articles on my website realized that the Argyllcms sRGB.icm had changed and wrote to me about it. I doubt I would have ever noticed on my own that the Argyllcms 1.6.0 and 1.6.1 sRGB/AdobeRGB profiles didn't match.

Elle

Other related posts: