Adding Custom Working Profiles


“And about the displays, there are some of them that have their own hardware calibration device built in. After a calibration process they save the icc profile inside the display , not in a hard drive in the computer. So, if you somehow can access that icc profile and save it in your computer, you can then use it as just another icc profile.”

Yes I have an Eizo 2420 hardware calibrated monitor and it saves an extra profile copy on the hard drive. i fail to see the relevance of using that particular facility as a means of including a Holmes profile in RT’s working profile category. Am i missing something Xavier? Also, thanks for the idea in the first place…appreciated
Matt

[quote=“gaaned92, post:111, topic:18022”]
it is effectively said in rawpedia that RawTherapee’s own ICC profile folder is /library/ColorSync/Profiles/Displays on MACOS.

correct…

The RawTherapee own ICC profile folder must contain two subfolders ‘input’ and ‘output’. Is it true?
if not, where are input and output folders containing all shipped icc profiles?

There are no input/output folders available. Most profile options are hardcoded and any custom work goes into /library/ColorSync/Profiles/Displays or any directory that you wish to use in Preferences/Colormanagement…)
I use my camera profile for input…automatically picked up by RT and CA and Lens adjusts are immaculate…

bundled RT Working profiles are hardcoded…impossible to reach . Json files are meant to penetrate RT Working Profile Combo box by lodging both the Holmes.icc profile itself and the relevant json file in the directory outlined by you above /library/ColorSync/Profiles/Displays …we are using, it appears, monitor profile structures as working space profiles .However the profile requirements are simple enough and the profile classed as a monitor profile appears not to be of concern provided it is an RGB profile.
Output profiles are lodged in the directory outlined again by you above /library/ColorSync/Profiles/Displays and in addition RT has its own output profiles collection included in /library/ColorSync/Profiles/Displays

custom WS

" As @XavAL suggested, use a folder and subfolder where you are sure to have read/write access and point RT to it in preferences. ( Preferences > Color Management > Directory containing color profiles)"

Yes I agree…i have watched the ownership issue from the start and am following all directory and preferences instructions too.

“put in this folder your own output profiles and your workingspaces.json. You can also put her your custom WS , it is not required but easier”

I agree and in fact Rawpedia pages 325/8 outlines exactly where the jason file is to be lodged /library/ColorSync/Profiles/Displays on MACOS. Rawpedia also insists that Holmes .icc file and the json file are placed in the same directory /library/ColorSync/Profiles/Displays .
Rawpedia 325/8 gives no clue as to where custom output profiles are to go…but it is the same directory /library/ColorSync/Profiles/Displays . That discovery took a bit of time to unravel because I assumed that the Json file was talking to the Output Profile Combo Box.In fact it was just that the Holmes.icc profile was being recognised without any assistance whatsoever from Json.

" in the file field of the json you must provide an absolute path to your working spaces, even if they are in the same directory as the json. (don’t forget to restart). The new WS are available.
Be careful with the path syntax on MACOS, I don’t know what it is.
Only primaries and white point are taken into account."

Thanks

3- Holmes method with RT

  • To benefit from Holmes method, you have to export the image with the Holmes basic ICC as output profile. The benefit from using the same profile as WS is that the transformation WS->connecting space-> output space will be a null operation, with just application of a TRC, LUT, gamma or whatever. After that you can assign a holmes derived ICC to the exported image. Assign means that you replace the original icc by the new icc without modifying the RGB data.
    I think using embedded prophoto WS should be ok.

I am used to assigning Holmes Variants to the Holmes Master profile for higher/lower saturation…your advice to exiting RT in Output mode with a Holmes basic profile and then simply assigning ( not converting ) back into the Photoshop Holmes master profile is just brilliant. I often wondered whether I would I be converting from Holmes to PCS to Holmes when switching apps but assigning is the smart way…no wasted number crunching and no color changing either…super stuff

THANK YOU for all that knowledge …I know Im keen to learn but this is tops altoghter!
Matt

.

1 Like

@Keentolearn Matt, could you please try to fix your post? It’s really hard for me to read what is a quote and what is your own respons. There is an easy quotes functionality in this forum: just select text from a post and a box with “Quote” will appear. Click it, and it will appear in the post you’re writing. Much easier to read than copy/pasting yourself and adding quotation marks.

Roll
Thank you so much for that invaluable tip…
It will make it so much easier for you to read and myself to write…
Again thanks for your patience. Appreciated
Matt

Only working space profiles are hardcoded.

Rawtherape use:
input profiles (either ICC or DCP) for camera.
Working space profile to translate data to working space
output space profiles to generate exported images.

You also have to define your display profile in the preferences.

Thus if there is no “input” and “output” folder in /library/ColorSync/Profiles/Displays I can deduce it is not the RawTherapee’s own ICC profile folder which,then is located somewhere else. So no interest to put something inside /library/ColorSync/Profiles/Displays.

Please, could you help trying to find where are the two folders “iccprofiles/input” and “iccprofiles/output”.

First search for profiles/input and profiles/output nearby the executable.

In conclusion, following above: don’t put anything in /library/ColorSync/Profiles/Displays except display profiles.

Perhaps, following what you will answer above, Rawpedia has to be corrected.

If there is no “input” and “output” folder in library/ColorSync/Profiles/Displays, RT puts and retrieve nothing in this directory.

It seems that rawpedia is wrong. So don’t try to use /library/ColorSync/Profiles/Displays.

Try exactly what I wrote following @XavAL suggestion to add additional working space profiles. It should work.

@ggbutcher where is your thread about color management and use of profiles ?

1 Like

i agree totally

Raw Therapee picks my DCP Nikon profile and I can correct CA and Lens Distortions effortlessly

I am searching now…I can tell you definitely that for Output ,I got the Holmes.icc to show up in Raw Therapee Output Combo Box by putting the Holmes.icc in MacintoshHD /Library/Colorsync/Profiles/Displays
i will search for the correct Output Directory on MacOs, starting in System and working out from there

I have some positive news.
Some of the profiles/output are stored as follows:
Macintosh HD/Library/Colorsync/Profiles/Displays/
My Holmes.icc is there…but all the Rawtherapee RTV2 and RTV4’s are definitely not to be seen…
will keep rooting for profiles/input
profiles/input
more good news… my camera profiles (DCP) are stored in Macintosh/Library/Colorsync/Profiles/Nikon
Displays are next door in Macintosh/Library/Colorsync/Profiles/Displays

I will need some help for that as I don’t have an alternative directory suggestion for my output profiles except Macintosh HD/Library/Colorsync/Profiles/Displays/
(Rawpedia page 325)

very interesting…there definitely never was an input or output folder in Displays that Raw Therapee could use.

“Try exactly what I wrote following @XavAL suggestion to add additional working space profiles. It should work.”
will do exactly as you and Xavier wrote… tomorrow …( its 2 in the morning here)…goodnight and thank you for being so helpful again

Matt

1 Like

@Keentolearn When I suggested to use the quotes feature, I didn’t mean that you have to make multiple posts :slight_smile: As a matter of fact, you can use it multiple times in the same post while composing. Just select a text and press the appearing “Quote” button.

All right @Keentolearn, I’m going to try and disect what has been happening so far.

First of all, I agree with @gaaned92’s remarks here and think RawPedia contains an error regarding the important directories, which might be part of the problem here (@XavAL please look at point 4 below). I would like somebody with a mac to confirm!

For the record, I am still very much unconvinced that you actually want the Holmes profile as your working profile, similar to what @gaaned92 said in the third point in his post yesterday and the discussion we had last May in this thread. But all things considered, RawTherapee should work as documented. My goal is to make it work for you.

Now, I’m also not a macOS user, so I cannot fully test things for you, but let’s try to go through the motions, since the process documented here (as already referenced before) seems fairly straightforward. I may be saying obvious stuff here, but at least we can be on exactly the same page that way :slight_smile:

  1. Things that are completely irrelevant for the working profile problem we are trying to solve: input profiles, output profiles, display profiles. Any mention of them confuses the issue.
  2. There is a set of hard-coded working profiles in RawTherapee that you cannot edit. These profiles have no corresponding icc file anywhere on your file system, as they are part of the source code and are compiled directly into the RawTherapee executable.
  3. You can add your own working profiles if needed by creating a workingspaces.json file that either refers to an external icc file, or directly declares the profile matrix.
  4. RawTherapee looks for the workingspaces.json file in two places. The rtICCDir and userICCDir (these are the internal variable names as you can see here).
    • The rtICCDir is always relative to the base directory of RawTherapee + /iccprofiles/ (see here). For macOS I believe it should be /Applications/RawTherapee.app/Contents/Resources/share/iccprofiles/, but I’m not 100% sure.
    • The userICCDir can be anything set in the RawTherapee Preferences:
      * There is one caveat here: RawTherapee will also look in this folder for additional output and display profiles. Changing this, might not be the best idea.
  5. Concluding from this, if there is a file called workingspaces.json in either directory, and it contains a valid JSON entry, RawTherapee will parse it and your custom working profile will turn up in the designated list:
    image

Since you have a custom ICC file that you want to use as your working profile. The contents of your workingspaces.json file should be something like this (as others have also mentioned before):

{"working_spaces": [
    {
        "name" : "My Custom Profile",
        "file" : "/path/to/your/profile.icc"
    }
]}

The name can be whatever you like, the file should point to the location of your desired Holmes’ ICC profile. Importantly, the ICC file you refer to can be anywhere on your system as long as the path in the JSON entry is correct.

Questions

  1. Does the folder /Applications/RawTherapee.app/Contents/Resources/share/iccprofiles/ exist on your system? I believe you should at least find an output and input folder here.
    This is what the corresponding folder on my Windows computer looks like:
    image
  2. Please post the content of your workingspaces.json here. If you write ``` on an empty line before and after a piece of text
it will look like code
  1. Please make a screenshot that shows the location of the ICC profile that you refer to in the JSON. If possible, show the absolute path (maybe that is visible when you show the file properties?).
2 Likes

I can confirm this on Linux, but I don’t have a Mac

A comment (perhaps a bit out of topic): in Linux that folder is by default the location where all color managed applications search and place profiles, so it may be a good idea leaving that option alone, but there are 2 scenarios where that won’t be suitable:

  • if the user doesn’t have write permissions over that folder
  • if the user doesn’t want an endless list of profiles, that most probably will never use: at least in my system not changing the default folder would mean I would have to choose from among 14 sRGB profiles… Perhaps it’s worth adding an extra checkbox setting to load system wide color profiles? And leave the current option to point to a user folder where he/she puts custom profiles? Maybe this deserves a github issue?

Yes…I discovered that little trick later last night…
Getting much easier to use when I let the program do its own thing…:grinning:
And you took the trouble to tell me which is cool :sunglasses:

Just to specify, the "Working Profiles"used in hard-code, are in the form of a matrix RGB==>XYZ, so the primaries, no more than the illuminants appear.

This supposes (and it is the case) that these XYZ matrices are elaborated from the standard primaries and illuminants of each original profile (eventually with a Bradford adaptation…for example for sRGB, AdobeRGB…) . And obviously TRCs are not taken into account.

Jacques

On W10, it is by default a Windows system directory C:\Windows\System32\spool\drivers\color where I don’t understand why any app would like to put profiles except for display profiles (for instance displaycal). Furthermore, you need administrator rights to write here.
So a safe and only way is to use a user defined dir.
In the context of W10 I think the additional checkbox is useless.
This should better be located by default in the config dir.

@gaaned92

This is definitely OOT, so I’ve opened a new github issue where we can discuss the topic.

Just a note: I think my suggestion is not useless in Windows, as I’ve commented in that github issue.

Let’s talk there…

2 Likes

I am beginning to make a little progress…I can see input/output for the first time