Another note about how babl and GIMP does now and eventually will (or might - looking at the babl bug report linked to above, it’s stil unclear) handle monitor profiles. This note also includes matrix monitor profiles such as single-channel and three-channel shaper matrix profiles:
If you look in GIMP Preferences under Color Management, there are already two options for conversions to the monitor profile, and also the same options for conversions to the soft-proofing profile. The options are:
- Precision / Color fidelity
- Speed
Here’s a screenshot, where I’ve chosen “Precision / Color fidelity”:
If you use a matrix monitor profile, and you choose “Speed”, the babl matrix speed-ups are already being used. This code has been in place for awhile now. If you choose “Precision / Color fidelity”, then currently the babl matrix speed-ups are not used.
The relevant babl and GIMP code for XYZ LUT monitor profiles isn’t yet fully implemented even in git. But in the future, at least as currently planned:
-
If the user has chosen an XYZ LUT monitor profile, and the user chooses “Speed” and also there is a shaper matrix in the XYZ LUT monitor profile, then the matrix is used all the time and the babl matrix performance speedups are enabled. As already notes, now there is code that detects the swapped channel matrix, and this matrix is not used.
-
If the user has chosen an XYZ LUT monitor profile, and the user chooses “Precision / Color fidelity” and also there is a shaper matrix in the XYZ LUT monitor profile, then the matrix will still be used but only for generating quick previews, after which the cLUTs are used to generate a more accurate display of the image.
Given that @gwgill will be adding an option for making XYZ LUT monitor profiles that will allow not embedding any matrix at all, the new colprof options will have implications for users making such monitor profiles, and perhaps implications for the default behaviors of “gui” profile-making software such as DisplayCAL and software that’s part of gnome color management.
In other words, GIMP users need to think carefully about what options they use to make monitor profiles, regardless of whether they use the command line or use DisplayCAL or gnome color management software or whatever.
I’m hoping that once the full set of babl/GIMP code changes are actually implemented, people on this list can help test whether, how much, and under what circumstances operations in GIMP really are speeded up by choosing “Speed” vs “Precision/ Color fidelting” in GIMP Preferences.
Again, currently the babl speed-ups are only applied if you also choose “Relative colorimetric intent”.