Wednesday, July 13, 2005

OS X 10.4.2 does not fix Tiger's problems with Color profiles (ColorSync)

Update: The fix has probably been released. Looks like the fix had to be made both to the OS and separately to iPhoto. Below are two interesting commentaries.

iPhoto Color Shift Bug, identified?

This is the best summary of the problem I've seen, and the first to suggest installing QT 7 could produce the problem on 10.3.x.
At this point I’m comfortable pointing to the underlying ColorSync foundations updated in 10.4 as the culprit. (These are used by SIPS and presumably by iPhoto too, despite iPhoto’s unique EXIF parsing engine, the foundations are meant to be used throughout the system.) My only hesitation is whether or not this problem appears on 10.3.x after installing QT7.
This bug is most obvious in two settings:
  • fast user switching messes up color profiles -- monitors that need them look awful after the switch
  • iPhoto mangles image color on edits
If it's a QuickTime bug I wonder if the fix will come with the next iteration of QT.


Update 7/14:

This bug may have been fixed in both 10.4.2 and iPhoto, but I find this description quite interesting nonetheless. It may be a more subtle bug than some might think ....
John Fieber (Macintouch)

Everyone out there trying to fuss with the Generic RGB profile to fix the iPhoto color shift is barking up the wrong tree. The problem is with the display profile.

The problem is that when you edit in iPhoto it CONVERTS the RGB data to the DISPLAY profile to use as a working space for the edit. [1] Then on save it ASSIGNS the display profile RGB data as Generic RGB. This is the bug.

The color data is in the display profile space, not Generic RGB. The color should have been converted. Profile aware applications, like iPhoto itself, reading the image interpret the color data incorrectly because of the incorrect profile.

The reason why some people notice it and others don't and why manipulating the Generic RGB profile appears to "solve" the problem for some is because the magnitude of the color shift is a function of the difference between the display profile and Generic RGB. If you change your display profile to Generic RGB, the color shift goes away. If you change Generic RGB to match your display profile, the color shift goes away.

Folks with CRTs will generally notice less of a shift than folks with LCDs, particularly bad ones like in the iBook and 12" PowerBook, because a CRT's native color behavior is much closer to Generic RGB than an LCD's.

If you edit in iPhoto, you can mitigate the damage by ASSIGNING the display profile to the image. (You can do this with Preview, ColorSync Utility, the sips command line tool, AppleScript, Automater, Photoshop, etc.) This will allow profile-aware applications to correctly interpret the color data. You might then CONVERT to another profile, such as sRGB, depending on the intended use of the image.

(But note that the damage control must be done after EVERY edit as the color shift bug is cumulative otherwise.)

[1] This could be considered a bug, but isn't the cause of dramatic color shifts. The display profile is a lousy working space and conversions through it can be very lossy indeed. However, this was a design choice of the iPhoto team.
I think the iPhoto team was trying to improve color workflow for non-experts, but they took the wrong road. I use sRGB for everything: I attach it to images during import using raphic Converter nad I use it for my monitor profile. I was told this was a reasonable compromise for a non-expert, particularly since I edit using an iBook (lousy LCD color!).

No comments: