How does PTB colour correction interact with Mac OSX "Display Profile" ?

I am trying to use the PsychColorCorrection with SimpleGamma,

and I am wondering how it interacts with the Mac OSX Display Profile.


I had assumed that PTB would "take over" the display, so the Mac OSX Display Profile would be irrelevant, but this does not seem to be the case.


For example, when I "calibrate" my display and select D50 as the whitepoint, this gives the screen a warm yellowish tint.  When I run a PTB demo that uses SimpleGamma, the same yellowish tint persists.


For instance, ...


    AdditiveBlendingForLinearSuperpositionTutorial('PseudoGray')


It doesn't revert to the "native" characteristics (plus the PTB adjustments).


I presume this is the expected behaviour.


So here is my question:


Does anyone know how to disregard / override the Mac OSX Display Profile and rely entirely on PTB for colour correction and gamma control?


I would like my PTB program to be immunized against whatever Display settings and adjustments were made by recent users of the computer.  Is this possible?


thanks!


LoadIdentityClut(window) would load the hardware gamma tables with an identity mapping and that should hopefully override whatever the os otherwise does. Then the PsychColorCorrection() stuff will do gamma correction etc.

[framebuffer] --> PsychColorCorrection --> [corrected framebuffer] --> [hardware gamma tables] --> display.

Many PsychImaging() functions will implicitely call LoadIdentityClut wherever "bypassing" the hw gamma tables is important, e.g., when high precision display devices like Bits+/Bits#/DataPixx/ViewPixx/ProPixx or similar stuff is connected. LoadIdentityClut will also try to disable display dithering, depending on its parameters.

Sometimes you must call the function yourself, when it is not clear from PTB's perspective that calling it automatically would be clearly the right thing to do.

For most "normal" display situations on normal displays you would want to use the hw gamma tables.

This is so far the theory. In practice always check your results. In practice, as so often, especially OSX has sometimes nasty bugs or behaviours, or change of behaviours depending on osx version which could spoil your day. It's really more a toy operating system for life-style items than a professional OS for research by now.

Wrt. gamma tables on OSX 10.9, e.g., this little gem was one of my latest sources of joy:
Psychtoolbox-3/Psychtoolbox-3

 

This bug fix is not yet in current beta, only in the Psychtoolbox-3.0.11 final flavor.

Additionally new generations of GPU hardware learn new tricks for color correction beyond gamma tables, e.g., extra color space conversion matrices, or NVidia's "Color vibrancy" stuff, or new dithering strategies. Those tricks, if they get used by new operating systems, are usually out of our control, or in case of the properietary os'es, even hidden from us. The exception is Linux, where due to its open-source nature one can find out about such things early and work with the developers to make sure the OS doesn't spoil the party.

If one really cares about precise color reproduction, Linux would be the best long-term choice, with the highest chance of staying in control of what happens to those sparkly pixels.
-mario