Thread: [Lcms-user] How to specify *nix as the platform
An ICC-based CMM for color management
Brought to you by:
mm2
From: Elle S. <ell...@ni...> - 2014-01-24 13:49:32
|
How do you specify *nix as the platform when making an ICC profile? Elle Stone |
From: Richard H. <hug...@gm...> - 2014-01-24 13:58:57
|
On 24 January 2014 13:27, Elle Stone <ell...@ni...> wrote: > How do you specify *nix as the platform when making an ICC profile? Isn't that strictly an ArgyllCMS extension? You can read the cmsPlatformSignature out of the cmsICCHeader but I don't think it can be set. If Marti agrees I could easily code up a patch to get and set this. It might be interesting to know what platform a profile has in cd-iccdump. Richard |
From: Elle S. <ell...@ni...> - 2014-01-24 14:39:11
|
On 01/24/2014 08:58 AM, Richard Hughes wrote: > On 24 January 2014 13:27, Elle Stone <ell...@ni...> wrote: >> How do you specify *nix as the platform when making an ICC profile? > > Isn't that strictly an ArgyllCMS extension? You can read the > cmsPlatformSignature out of the cmsICCHeader but I don't think it can > be set. If Marti agrees I could easily code up a patch to get and set > this. It might be interesting to know what platform a profile has in > cd-iccdump. > > Richard > Ah, I didn't realize the tag was intended only for reading. The lcms source code file "cmsio0.c" checks for Windows and sets cmsSigMicrosoft, else defaulting to Apple. It's trivial to modify it to default to cmsSigUnices instead. But I couldn't figure out how to modify it to check for Windows, then *nix, then default to Apple. It might be nice to have the ability to choose the platform directly because profile makers might want to make a set of profiles for different platforms all from the same computer. Elle |
From: Richard H. <hug...@gm...> - 2014-01-24 14:16:35
|
On 24 January 2014 14:17, Elle Stone <ell...@ni...> wrote: > It might be nice to have the ability to choose the platform directly because > profile makers might want to make a set of profiles for different platforms > all from the same computer. IIRC, I thought the ICC advised against checking the platform like this. Profiles for OSX are supposed to work just as well with Windows, and all that. Richard |
From: Elle S. <ell...@ni...> - 2014-01-24 15:11:31
|
On 01/24/2014 09:16 AM, Richard Hughes wrote: > On 24 January 2014 14:17, Elle Stone <ell...@ni...> wrote: >> It might be nice to have the ability to choose the platform directly because >> profile makers might want to make a set of profiles for different platforms >> all from the same computer. > > IIRC, I thought the ICC advised against checking the platform like > this. Profiles for OSX are supposed to work just as well with Windows, > and all that. > > Richard I've never encountered a case where the platform actually mattered. Wanting to see *nix as the platform is strictly a personal preference. I've never liked the idea that something as necessary to color management as an ICC profile could be considered copyrighted and such, and so I don't use proprietary profiles. It would be nice if the platforms of floss profiles weren't proprietary platforms. Of course there are non-floss unices, but there are floss unices, too. Elle |
From: Graeme G. <gr...@ar...> - 2014-01-25 00:07:39
|
Elle Stone wrote: > I've never encountered a case where the platform actually mattered. Neither have I. There is a possibility of some CMM's responding differently to different versions of their own profiles though, ie. for backwards compatibility. > Wanting to see *nix as the platform is strictly a personal preference. Yep - it seemed simply wrong to choose between MSWin and Apple platform when neither was correct, so I added "*nix" as an option in icclib, (although you can set any tag you want in the header) and coded the ArgyllCMS tools to use it. ICC doesn't have a formal path for adding platform signatures, although one could simply ask them I guess. Graeme Gill. |
From: Kai-Uwe B. <ku...@gm...> - 2014-01-24 21:58:34
|
Am 24.01.2014 14:27, schrieb Elle Stone: > How do you specify *nix as the platform when making an ICC profile? cmsSigUnices is already defined in lcms2.h. It looks like lcms has no API to set all header flags. You might try the IccXML tools, which are pretty handy for such low level tasks. As a workaround one can easily map the whole profile to the cmsICCHeader structure and do the appropriate byte swapping during writing into the platform field. void * profile = create_icc(); cmsICCHeader * header = (cmsICCHeader*)profile; header->platform = htonl( cmsSigUnices ); kind regards Kai-Uwe |
From: <mar...@li...> - 2014-01-25 00:41:32
|
Elle, the problem is *nix is not a registered signature and therefore you would produce non-conformant profiles if using that. The icc profile dump app issues a warning, and I know about more than one company using that tool to validate profiles. Otherwise, a CMM should *not* make any distinction from this fieldso, its usage is purely testimonial. Actually lcms uses it as a watermark and only mac and windows are supported. It is like the creation date: is supposed to be put there by the system and nobody should use it. If you have any use case other than purely cosmetic I would gladly add it, but in any case we need to get *nix signature registered first. Regards Marti Quoting Elle Stone <ell...@ni...>: > On 01/24/2014 09:16 AM, Richard Hughes wrote: >> On 24 January 2014 14:17, Elle Stone <ell...@ni...> wrote: >>> It might be nice to have the ability to choose the platform >>> directly because >>> profile makers might want to make a set of profiles for different platforms >>> all from the same computer. >> >> IIRC, I thought the ICC advised against checking the platform like >> this. Profiles for OSX are supposed to work just as well with Windows, >> and all that. >> >> Richard > > I've never encountered a case where the platform actually mattered. > > Wanting to see *nix as the platform is strictly a personal preference. > I've never liked the idea that something as necessary to color > management as an ICC profile could be considered copyrighted and such, > and so I don't use proprietary profiles. It would be nice if the > platforms of floss profiles weren't proprietary platforms. > > Of course there are non-floss unices, but there are floss unices, too. > > Elle > > ------------------------------------------------------------------------------ > CenturyLink Cloud: The Leader in Enterprise Cloud Services. > Learn Why More Businesses Are Choosing CenturyLink Cloud For > Critical Workloads, Development Environments & Everything In Between. > Get a Quote or Start a Free Trial Today. > http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk > _______________________________________________ > Lcms-user mailing list > Lcm...@li... > https://lists.sourceforge.net/lists/listinfo/lcms-user |
From: Kai-Uwe B. <ku...@gm...> - 2014-01-25 08:24:15
|
Am 25.01.2014 01:41, schrieb mar...@li...: > Elle, the problem is *nix is not a registered signature and therefore > you would produce non-conformant profiles if using that. The icc > profile dump app issues a warning, and I know about more than one > company using that tool to validate profiles. Otherwise, a CMM should > *not* make any distinction from this fieldso, its usage is purely > testimonial. > > Actually lcms uses it as a watermark and only mac and windows are > supported. It is like the creation date: is supposed to be put there > by the system and nobody should use it. The testimonial header fields are used to generate statistics from e.g. the Taxi DB on http://icc.opensuse.org . Without that some interessting informations about OS collaboration and timelines would be non accessible. kind regards, Kai-Uwe |
From: Elle S. <ell...@ni...> - 2014-01-25 15:56:52
|
On 01/24/2014 07:41 PM, mar...@li... wrote: > > Elle, the problem is *nix is not a registered signature and therefore > you would produce non-conformant profiles if using that. The icc profile > dump app issues a warning, and I know about more than one company using > that tool to validate profiles. Otherwise, a CMM should *not* make any > distinction from this fieldso, its usage is purely testimonial. > > Actually lcms uses it as a watermark and only mac and windows are > supported. It is like the creation date: is supposed to be put there by > the system and nobody should use it. On the one hand, creating a floss profile that's incompatible with nonfloss software would of course be a problem for people who want to use that software. On the other hand, if some software refuses to use a profile because of a *nix platform tag, when the platform tag is purely testimonial and shouldn't be used - that could be characterized as a bug in the software. Negative primary values also result in a warning, at least when using iccToXml and so also with the icc profile dump app? Hopefully software ignores this warning. Otherwise there's no way to use a whole lot of custom camera input profiles with the softwares that validate profiles using the dump app. > > If you have any use case other than purely cosmetic I would gladly add > it but in any case we need to get *nix signature registered first. The use case could be characterized as philosophic and as reflecting reality, rather than as purely cosmetic. Linux does exist and is used to make ICC profiles and as a digital imaging platform. If the *nix signature were registered that would make more sense than the current situation. Of the four currently registered platform signatures, according to Wikipedia Taligent never made it to market and ceased development in 1998. I suspect Oracle isn't much used to make ICC profiles or as a platform for digital imaging. > Quoting Elle Stone <ell...@ni...>: >> Wanting to see *nix as the platform is strictly a personal preference. This personal preference reflects philosophic concerns that perhaps are shared by some other people who use Linux. Elle |