Author Topic: Open: Blown highlights/lost shadows signal colour black instead of red/blue  (Read 1676 times)

Offline Hayo Baan

  • Uber Member
  • ******
  • Posts: 2523
  • Professional Photographer & Software Developer
    • View Profile
    • Hayo Baan - Photography
With the latest PM6 3023 and PM Plus 3029 builds, the signal colour for blown highlights and lost shadow details has now become black instead of red and blue respectively. Especially for the lost shadows this is a nuisance since then you can't even identify them any more.

I went back a couple of versions and the problem wasn't there in build 2818, the first time, I saw it was in the 2895 build (that Bill made for me).

Interestingly, this is only the case on my MacBook Pro (hdpi), not on my desktop (non hdpi); there the signal colours are still correct.
« Last Edit: May 07, 2019, 01:28:43 AM by Hayo Baan »
Hayo Baan - Photography
Web: www.hayobaan.nl

Offline Hayo Baan

  • Uber Member
  • ******
  • Posts: 2523
  • Professional Photographer & Software Developer
    • View Profile
    • Hayo Baan - Photography
Interestingly, this problem does not occur on my new (2019) MacBook Pro either. So there seems to be some compatibility issue here. At the moment I can't test it on the old 2012 MacBook Pro, but will revisit this issue whenever I again have the chance to do so. Still interesting to see what has changed in code that triggered this (as I mentioned it started with build 2895 for me).
Hayo Baan - Photography
Web: www.hayobaan.nl

Offline Kirk Baker

  • Senior Software Engineer
  • Camera Bits Staff
  • Superhero Member
  • *****
  • Posts: 21697
    • View Profile
    • Camera Bits, Inc.
Hayo,

Interestingly, this problem does not occur on my new (2019) MacBook Pro either. So there seems to be some compatibility issue here. At the moment I can't test it on the old 2012 MacBook Pro, but will revisit this issue whenever I again have the chance to do so. Still interesting to see what has changed in code that triggered this (as I mentioned it started with build 2895 for me).

No idea.  I have not gone out of my way to make changes to code that works. ;)

-Kirk

Offline ahoward

  • Camera Bits Staff
  • Newcomer
  • *****
  • Posts: 29
    • View Profile
Hey Hayo,

Can you give me the specs for the machine with this problem, as well as what color profile you are using on the display? I am able to reproduce on a 2013 MacBook Pro, but only with a single display profile. Very curious what hardware you are running.

Offline Hayo Baan

  • Uber Member
  • ******
  • Posts: 2523
  • Professional Photographer & Software Developer
    • View Profile
    • Hayo Baan - Photography
Interesting that you can reproduce this!
It was a 2012 MacBook Pro (Retina), running (I think) the native display profile. OS 10.14.4.
At the moment I have no access to it as it is in the works of being swapped out and that's taking a bit longer still...
Hayo Baan - Photography
Web: www.hayobaan.nl

Offline ahoward

  • Camera Bits Staff
  • Newcomer
  • *****
  • Posts: 29
    • View Profile
Very strange. Not really seeing any commonalities between hardware with reports of this issue. and it happens across several versions of MacOS.

Offline ahoward

  • Camera Bits Staff
  • Newcomer
  • *****
  • Posts: 29
    • View Profile
Interesting that you can reproduce this!
It was a 2012 MacBook Pro (Retina), running (I think) the native display profile. OS 10.14.4.
At the moment I have no access to it as it is in the works of being swapped out and that's taking a bit longer still...

I ran the built-in monitor calibration on MacOS and the profile that created does not have this issue.

Offline Hayo Baan

  • Uber Member
  • ******
  • Posts: 2523
  • Professional Photographer & Software Developer
    • View Profile
    • Hayo Baan - Photography
Things get stranger still. So it's definitely profile related. BUT it must also be something in PM that triggers this since with previous versions there was no problem with the same profile!
Hayo Baan - Photography
Web: www.hayobaan.nl

Offline Kirk Baker

  • Senior Software Engineer
  • Camera Bits Staff
  • Superhero Member
  • *****
  • Posts: 21697
    • View Profile
    • Camera Bits, Inc.
Things get stranger still. So it's definitely profile related. BUT it must also be something in PM that triggers this since with previous versions there was no problem with the same profile!

We are now using LittleCMS for cross-platform color management instead of Apple's ColorSync (they deprecated almost all of the methods we were using and replaced them with new ones that are poorly documented) but I expect the color to be nearly identical.

It may be that setting a color to pure red or pure blue gets wrapped to black on your profile with LittleCMS.  If I were to make it just one less (254 vs 255) for the red/blue component that it would work fine in your case, Hayo.

-Kirk

Offline Hayo Baan

  • Uber Member
  • ******
  • Posts: 2523
  • Professional Photographer & Software Developer
    • View Profile
    • Hayo Baan - Photography
We are now using LittleCMS for cross-platform color management instead of Apple's ColorSync (they deprecated almost all of the methods we were using and replaced them with new ones that are poorly documented) but I expect the color to be nearly identical.

Yeah, quite annoying that Apple deprecated the methods and then chose to not properly document the new ones :(

It may be that setting a color to pure red or pure blue gets wrapped to black on your profile with LittleCMS.  If I were to make it just one less (254 vs 255) for the red/blue component that it would work fine in your case, Hayo.

Hmm, I guess this might help but I think it does indicate a bug in the LittleCMS. What if the original image already contains such a colour (very well possible, especially with e.g. artwork)? Does that also not get rendered incorrectly?
Hayo Baan - Photography
Web: www.hayobaan.nl

Offline Kirk Baker

  • Senior Software Engineer
  • Camera Bits Staff
  • Superhero Member
  • *****
  • Posts: 21697
    • View Profile
    • Camera Bits, Inc.
Hayo,

We are now using LittleCMS for cross-platform color management instead of Apple's ColorSync (they deprecated almost all of the methods we were using and replaced them with new ones that are poorly documented) but I expect the color to be nearly identical.

Yeah, quite annoying that Apple deprecated the methods and then chose to not properly document the new ones :(

It may be that setting a color to pure red or pure blue gets wrapped to black on your profile with LittleCMS.  If I were to make it just one less (254 vs 255) for the red/blue component that it would work fine in your case, Hayo.

Hmm, I guess this might help but I think it does indicate a bug in the LittleCMS. What if the original image already contains such a colour (very well possible, especially with e.g. artwork)? Does that also not get rendered incorrectly?

I don't know.  Try creating a TIFF file with half of the image pure Red and the other half pure Blue and then view it on the affected system with PM6.

-Kirk

Offline Hayo Baan

  • Uber Member
  • ******
  • Posts: 2523
  • Professional Photographer & Software Developer
    • View Profile
    • Hayo Baan - Photography
Hayo,

We are now using LittleCMS for cross-platform color management instead of Apple's ColorSync (they deprecated almost all of the methods we were using and replaced them with new ones that are poorly documented) but I expect the color to be nearly identical.

Yeah, quite annoying that Apple deprecated the methods and then chose to not properly document the new ones :(

It may be that setting a color to pure red or pure blue gets wrapped to black on your profile with LittleCMS.  If I were to make it just one less (254 vs 255) for the red/blue component that it would work fine in your case, Hayo.

Hmm, I guess this might help but I think it does indicate a bug in the LittleCMS. What if the original image already contains such a colour (very well possible, especially with e.g. artwork)? Does that also not get rendered incorrectly?

I don't know.  Try creating a TIFF file with half of the image pure Red and the other half pure Blue and then view it on the affected system with PM6.

Hi Kirk, I reinstalled my old laptop and added a demo version of PM6 onto it to try and replicate things. I created an image file with all primary as well as all mix colors with their levels set to 255. I then assigned it the colour profile of the LCD Display (so the colours would come out unaltered, or at least so I had hoped). Viewing this image did reproduce the highlight problem for the white square that was in the image, but all other colours showed normal. I then measured the colours (using the digital colour meter application) and found that pure red, instead of having 255 as value, “only” has 254, the same for pure blue, pure green became 0,255,1 and magenta 255,0,254. Cyan and yellow on the other hand where fine (0,255,255 and 255,255,0 respectively).

I remember discussing these little discrepancies (rounding errors?) before, but I think they are exactly what is causing the problem in some of the cases. I would be happy to try a version where you set the highlight colours to 254,0,0 and 0,0,254, to see if that solves the highlight problem. But to be honest, I still think we then still might have an issue with some of the colours inside images i.e., ones that map onto 255,0,0 and 0,0,255, and perhaps even 0,255,0 after profile translations. Granted, I have not been able to produce colours from an image myself yet, but this is likely possible.

P.S. I do find it suspicious that if I have a file with the colour profile of the display, I do not get the exact numbers for the colours as I had in-file; feels like a translation error somewhere in the pipeline, but at least the values measured are the same for the file viewed in Preview, so if it's an error, it's outside PM :)
Hayo Baan - Photography
Web: www.hayobaan.nl

Offline Kirk Baker

  • Senior Software Engineer
  • Camera Bits Staff
  • Superhero Member
  • *****
  • Posts: 21697
    • View Profile
    • Camera Bits, Inc.
Hayo,

What happens if you instead of assigning the profile to your image, you convert the colors to that profile?  It's quite possible that the colors you've chosen are outside the gamut of your profile and they have to be moved to lie inside the gamut of your profile prior to display.

-Kirk

Offline Hayo Baan

  • Uber Member
  • ******
  • Posts: 2523
  • Professional Photographer & Software Developer
    • View Profile
    • Hayo Baan - Photography
Hi Kirk, converting instead of assigning the profile would miss the goal: produce a file that has exactly those colours as requested (in the display profile). Besides, by assigning the profile you can never produce values outside the profile gamut; the numbers are used as is and are therefore guaranteed to be in-gamut :)
Hayo Baan - Photography
Web: www.hayobaan.nl