This is yet another color management protocol proposal. It ignores HDR and calibration/profiling on purpose.
The general idea here is twofold: 1. clients can create color spaces from ICC profiles and attach them with a render intent to a wl_surface 2. clients can get feedback about which color spaces a given wl_surface was converted to with which priority (implicitly via the order of events) The compositor should be doing its best to convert all surfaces to the correct color space for the next present. Color space conversions don't have a single correct algorithm but are subjective which means for accurate colors clients should be able to do all color conversion. This is not always possible (surface spanning multiple outputs, hotplugging outputs, etc) but with the color space conversion feedback the client can get as close as possible. For example if the surface is shown on a single output the client can assume that the next frame will be shown on the same output and use the correct color space for that output. It it spans multiple outputs the client can choose one color space and let the compositor do the best to convert to the other. In many cases, with a well-behaving client, the compositor can skip color conversion entirely. Feedback and comments appreciated. The protocol summary and description texts could use more work (help here would also be appreciated). Sebastian Wick (1): unstable: add color management protocol Makefile.am | 1 + unstable/color-management/README | 4 + .../color-management-unstable-v1.xml | 183 ++++++++++++++++++ 3 files changed, 188 insertions(+) create mode 100644 unstable/color-management/README create mode 100644 unstable/color-management/color-management-unstable-v1.xml -- 2.20.1 _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
