[argyllcms] Re: XYZ CLUT profiles

  • From: Gerhard Fuernkranz <nospam456@xxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Mon, 25 Jan 2010 20:14:03 +0100

Klaus Karcher wrote:
> Hi Graeme,
>
> Did you already notice that Apple's "Profile First Aid" (ColorSync
> Utility) moans about missing tags in Argyll XYZ CLUT profiles?:
>
> Tag 'rXYZ': Required tag is not present.
> Tag 'gXYZ': Required tag is not present.
> Tag 'bXYZ': Required tag is not present.
> Tag 'rTRC': Required tag is not present.
> Tag 'gTRC': Required tag is not present.
> Tag 'bTRC': Required tag is not present.
>
> I'm not exactly well versed in the ICC specs but I think Apple is
> wrong. Also SampleICC's iccProfLibTest tool attests that the profile
> in question is valid.

At least recent versions of the (V4) spec don't require any TRC or
matrix present in "LUT-based display profiles":

    "8 Required tags
    [...]
    8.4 Display profiles

    8.4.1 General
    This class of profiles represents display devices such as monitors.
    The types of profiles available for use as display profiles are
    N-component LUT-based, Three-component matrix-based, and Monochrome.

    8.4.2 N-Component LUT-based display profiles
    In addition to the tags listed in 8.2 an N-component LUT-based input
    profile shall contain the following tags:
    AToB0Tag (see 9.2.1) and
    BToA0Tag (see 9.2.6).
    AToB1Tag (see 9.2.2), AToB2Tag (see 9.2.3), BToA1Tag (see 9.2.7),
    BToA2Tag (see 9.2.8) may also be included in an N-component
    LUT-based display profile. If these are present, their usage shall
    be as defined in Table 21 (see 9.1). A gamutTag (see 9.2.18) may be
    included. The usage of this tag is identical as in output profiles.
    [...]"

But older versions of the spec (for instance "Specification
ICC.1:2001-04" - profile version 2.4.0) seem to require them generally
in "RGB display profiles":

    "6.3.2.2 RGB Display Profiles

    Table 25 — RGB display profile required tags

    Tag Name General Description

    profileDescriptionTag Structure containing invariant and localizable
    versions of
    the profile name for display
    redColorantTag Relative XYZ values of red phosphor
    greenColorantTag Relative XYZ values of green phosphor
    blueColorantTag Relative XYZ values of blue phosphor
    redTRCTag Red channel tone reproduction curve
    greenTRCTag Green channel tone reproduction curve
    blueTRCTag Blue channel tone reproduction curve
    mediaWhitePointTag Media XYZ white point
    copyrightTag 7-bit ASCII profile copyright information
    [...]
    *Additional* multidimensional tags (AToB0Tag, AToB1Tag, AToB2Tag,
    BToA0Tag, BToA1Tag, BToA2Tag) may also be included. If these are
    present, their usage shall be as defined in Table 20.
    [...]"

Regards,
Gerhard




Other related posts: