[RFC 0/1] Color manager calibration protocol v1
e.burema at gmail.com
Sun Apr 14 10:57:47 UTC 2019
Without a way to calibrate/profile screens an color management protocol looses a lot of its value. So to add this missing feature I wrote the following protocol.
The idea is that the calibration/profiling SW only sets the RGB triplet and then the compositor is responsible to draw a rectanglular region on the selected output screen, since not all calibration tools will be at the center of the screen a user should be able to modify the placement of this rectanglular region. Unless specified the monitor profile (if any) should not be applied but the GPU curve should, currently to set a new curve the calibration tool should generate a new ICC profile with the wanted curve in the VCGT tag (I am not sure if this is the best option but would make the most universal one). In the end after profiling the last uploaded ICC could then be saved (although a compositor is not required to honor the request in that case it should send the not saved error). If the compositor doesn't save or the connection with this protocol is broken the compositor should restore previous settings.
Currently no support to calibrate HDR screens since this will require direct access (no tonemapping or color correction should happen in the screen, with the potential exception if it is possible to upload custom LUTs to the screen), this will require something like the FREESYN2_GAMMA22 display mode as described here: https://gpuopen.com/using-amd-freesync-2-hdr-color-spaces/ if this is not available a HDR screen should be treated as if it is a rec2020+PQ or HLG since it will do its own compositing+color managing (which might or might not be correct)
Erwin Burema (1):
Add color manager calibration protocol v1
.../cm_wayland_calibration.xml | 106 ++++++++++++++++++
1 file changed, 106 insertions(+)
create mode 100644 unstable/color-manager-calibration/cm_wayland_calibration.xml
More information about the wayland-devel