Embedded profiles in GIMP 2.8 and 2.9

An odd difference between 2.8 and 2.9:

I process a NEF file in darktable and export it with sRGB-elle-V4-srgbtrc.icc as the output profile. I open in GIMP, keep the embedded profile, adjust, and export as a jpeg.

If I then re-open the jpeg in GIMP 2.8, in the Image Properties section, no profile is identified in the Colour Profile tab. However, in GIMP 2.9, it correctly identifies sRGB-elle-V4-srgbtrc.icc.

Any idea why?

Simply put, there have been major changes since 2.8.x, including color management and high bit depth editing. If you would like to use 2.9.x, I recommend that you stick with it because it won’t be compatible with 2.8.x. At the moment, I am using 2.9.7 myself and find it stable enough to use.

What settings do you have in GIMP 2.8 for “Preferences/Color Management/File Open behaviour” and for “Preferences/Color Management/RGB Profile”? I have these Preferences set to “Ask what to do” for “File Open behaviour” and to “None” for the RGB Profile.

To replicate your steps, I used GIMP-2.9 to save a test file to disk with “sRGB-elle-V4-srgbtrc.icc” as the embedded ICC profile. When I used 2.8 to open the test file, GIMP-2.8 asked whether or not to keep the embedded profile. Opting to keep the selected profile did result in “Image Properties” showing “sRGB-elle-V4-srgbtrc.icc” as the embedded ICC profile.

As an aside, in GIMP-2.9, the built-in sRGB profile and my “sRGB-elle-V4-srgbtrc.icc” are identical. However, for GIMP 2.9 (I mean default GIMP 2.9, not my CCE version, which has its own very different set of color management issues), sometimes editing images that aren’t in the built-in sRGB color space can cause various issues and/or result in new profiles being created and assigned to the image.

I would suggest that as soon as you import into GIMP-2.9 an image file that’s in the “sRGB-elle-V4-srgbtrc.icc” color space, the first step should be to assign GIMP-2.9’s built-in sRGB color space. This will not change the image colors at all (if it does, there’s a problem somewhere!).

Then when you are finished editing and you want to export a file to disk, re-assign “sRGB-elle-V4-srgbtrc.icc” before exporting the file to disk. This way you side-step any new profiles that GIMP-2.9 might have created.

Hi Elle,

I have colour management Preferences in GIMP 2.8 set to “Ask what to do” for “File Open behaviour” and to “sRGB-elle-V4-srgbtrc.icc” for the RGB Profile.

Is it best not to specify a working space, then?

BTW, I do appreciate your clear explanations and advice on what is quite a complicated topic.

Just reading your response again. Did you mean in 2.8 the built-in sRGB profile and my “sRGB-elle-V4-srgbtrc.icc” are identical? And then it’s the default 2.9 that has its own very different set of color management issues, rather than your CCE version?

Hmm, as long as “Ask what to do” is selected, then having a working space specified in 2.8.22 doesn’t affect preserving the embedded ICC profile of images opened from disk. I thought maybe it did, but checking, it doesn’t.

Even with “Ask what to do” checked, is the embedded profile still not showing up in GIMP-2.8?

If so, are you sure “sRGB-elle-V4-srgbtrc.icc” is actually embedded in the image? A quick way to tell is to navigate to the folder in which the image file is held, and use exiftool at the command line, typing this command - “exiftool -s -ProfileDescription test-image.jpg” - but of course without the quotes and using the actual name of the image file. Exiftool should report as follows:

ProfileDescription : sRGB-elle-V4-srgbtrc.icc

I meant GIMP-2.9’s built-in sRGB profile is the same as “sRGB-elle-V4-srgbtrc.icc”. This is true for default GIMP-2.9 and also for my “CCE” version of 2.9. By “the same” I mean the profile primaries, source white point, and TRC are a match. Other tags do vary, but those other tags aren’t functional tags.

I’m not very familiar with GIMP-2.8 code. Downloading the source code and looking, no, it doesn’t look like 2.8 uses the same profile as GIMP-2.9, though actually I didn’t find any “sRGB profile making code” anywhere in GIMP-2.8 - I did find the sRGB Y values, and those Y values are unadapted, hence somewhat incorrect. So I’m guessing the sRGB profile changes for 2.9 were not backported to 2.8.

Hmm, AFAIK from testing various image editors, all image editors have their own individual color management issues. Usually/hopefully/most of the time the issues aren’t a problem for users.

For default GIMP-2.9, at least for now (this might not change until GIMP-3.0 or later) the code that flips between linear and perceptually uniform RGB is hard-coded to use the sRGB TRC, and the code for Y/XYZ is hard-coded to use the sRGB primaries. So unless you know exactly which editing algorithms use the TRC code and/or use Y/XYZ, you risk getting incorrect editing results if you edit in color spaces other than GIMP’s built-in sRGB color spaces.

Even when the primaries and TRC are a match, default GIMP-2.9 has separate code paths for “built-in sRGB” vs sRGB embedded as a profile from disk. Sometimes these separate code paths cause issues, and at the very least are likely to result in default GIMP-2.9 making a new profile from the embedded profile’s primaries. This happens, for example, when switching from perceptual to linear “precision”.

Cutting to the chase, for default GIMP-2.9, it’s better to convert to GIMP’s built-in sRGB profile, or in the case of profiles that are functional matches, assign GIMP’s built-in sRGB profile.

GIMP-2.8 also has hard-coded (and very slightly wrong) sRGB parameters.

My “CCE” version of GIMP 2.9 does use the primaries from the image’s embedded ICC profile. But unlike default GIMP-2.9, in CCE there is no code for compensating for the profile TRC, so it’s up to the user to convert to the required ICC profile for various editing operations. In general, it’s best to use one of my linear gamma ICC profiles when editing using “CCE”.

Exiftool shows “sRGB-elle-V4-srgbtrc.icc” is embedded. It still doesn’t show up in Image Properties in 2.8. Nor does it show up in the “Convert to RGB working space?” dialog box on opening the file.

It’s annoying, but not the end of the world. I was concerned that the profile had become disembedded (is that a word?). Exiftool confirms that it is embedded so I can live with that.

Thanks for all your help.

What version of GIMP-2.8 are you using? There was a time when 2.8 couldn’t read V4 ICC profiles.

It’s 2.8.22, on a Mac.

Hmm, well, double-checking, I used GIMP-2.8.22 to open a jpeg with a from-disk V4 sRGB profile embedded (the same profile you are using), and in “Images/Properties” on the “Color Profile” tab, the profile description (which for my profiles matches the profile file name) is shown.

Perhaps this is an issue with the Mac version of GIMP-2.8?

In the Mac version of GIMP-2.8, does the image as exported by GIMP-2.8 still have the embedded ICC profile (open and then immediately export under a new file name, and check to see if the profile is still embedded). Checking on my copy of 2.8.22, the profile is still embedded.

At any rate, I’d suggest asking on the GIMP developer’s website if the Mac and Linux versions differ in how profile information is displayed, and/or in how embedded profiles are treated. If yes, then this might be a bug in the Mac version.

Using exiftool, a jpeg with your V4 profile retains the profile from import through to export, even when exported with a new name.

Please don’t spend quality Sunday time on it! As long as I know it hasn’t become disembedded, I can live with it. I’ll likely be switching to 2.9, anyway.

I do appreciate your looking into this for me, Elle. Thank you.