From b0b1010301b0e50334b3cfacf2be2837a8f1fb0a Mon Sep 17 00:00:00 2001 From: Dudemanguy Date: Mon, 14 Jul 2025 22:05:35 -0500 Subject: [PATCH] staging/color-management: loosen restriction on maxCLL and maxFALL ANSI/CTA-861-H does not require that maxCLL or maxFALL be within the Mastering Display Luminance range, and it is common for movies to have a maxCLL greater than the Mastering Display Luminance. Additionally, Microsoft's own documentation* contains an example that does not pass the restriction in the protocol. These values are valid, used in the real world, and clients should not need to discard them. We keep the requirement that maxFALL <= maxCLL since that is required, but these values have no relation to the Mastering Display Luminance. See #263 for further details on why the restriction on maxCLL and maxFALL is not desirable. Fixes #263. *: https://learn.microsoft.com/en-us/windows/win32/api/dxgi1_5/ns-dxgi1_5-dxgi_hdr_metadata_hdr10 Signed-off-by: Dudemanguy --- .../color-management/color-management-v1.xml | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/staging/color-management/color-management-v1.xml b/staging/color-management/color-management-v1.xml index 50cd545..879ba39 100644 --- a/staging/color-management/color-management-v1.xml +++ b/staging/color-management/color-management-v1.xml @@ -77,7 +77,7 @@ only be done by creating a new major version of the extension. - + A singleton global interface used for getting color management extensions for wl_surface and wl_output objects, and for creating client defined @@ -558,7 +558,7 @@ - + A wp_color_management_output_v1 describes the color properties of an output. @@ -628,7 +628,7 @@ - + A wp_color_management_surface_v1 allows the client to set the color space and HDR properties of a surface. @@ -716,7 +716,7 @@ - + A wp_color_management_surface_feedback_v1 allows the client to get the preferred image description of a surface. @@ -818,7 +818,7 @@ - + This type of object is used for collecting all the information required to create a wp_image_description_v1 object from an ICC file. A complete @@ -934,7 +934,7 @@ - + This type of object is used for collecting all the parameters required to create a wp_image_description_v1 object. A complete set of required @@ -1005,14 +1005,16 @@ complete, the protocol error incomplete_set is raised. For the definition of a complete set, see the description of this interface. - The protocol error invalid_luminance is raised if any of the following - requirements is not met: + When both max_cll and max_fall are set, max_fall must be less or equal + to max_cll otherwise the invalid_luminance protocol error is raised. + + In version 1, these following conditions also result in the + invalid_luminance protocol error. Version 2 and later do not have this + requirement. - When max_cll is set, it must be greater than min L and less or equal to max L of the mastering luminance range. - When max_fall is set, it must be greater than min L and less or equal to max L of the mastering luminance range. - - When both max_cll and max_fall are set, max_fall must be less or equal - to max_cll. If the particular combination of the parameter set is not supported by the compositor, the resulting image description object shall @@ -1306,7 +1308,7 @@ - + An image description carries information about the pixel color encoding and its intended display and viewing environment. The image description is @@ -1433,7 +1435,7 @@ - + Sends all matching events describing an image description object exactly once and finally sends the 'done' event.