Color management support revised
Feature summary
This is a rough plan on how the Mutter implementation for color management support will be upstreamed. The upstreaming is split into two major phases:
- Features that can be implemented without any protocol extensions by assuming that client content is always standard sRGB.
- Implementing CM protocol extension and follow-up work.
The CM&HDR protocol development is tracked at wayland/wayland-protocols!14.
For more details on the CM wayland-protocols design & compositor CM implementation plans, we can refer to https://gitlab.freedesktop.org/pq/color-and-hdr
Phase 1
-
Color management (Pt. 1: Attach color state info to actors) !2443 (merged)
-
Color management (Pt. 2: Plumb actor color state and output color state to CoglPipeline construction and usage)
-
Color management (Pt. 3: Support transforming between different types of color state)
-
Color management (Pt. 4: Mutter core changes for CM support)
-
Color management (Pt. 5: Mutter CM DRM/KMS path enablement)
Phase 2
- Color management (Pt. 4: Client side changes based on new CM wayland-protocols)
- Color management (Pt. 5: Mutter changes to consume protocols data sent from clients)
Follow-up work
- Color management (Pt. 6: Support & validation of other colorspace & pixel formats)
This MR !3137 (closed) will supersedes all the previous MRs !1898 (closed) & !2198 (closed) for CM support in Mutter.