<div dir="auto"><div><br><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">пн, 7 апр. 2025 г., 14:19 Pekka Paalanen <<a href="mailto:pekka.paalanen@haloniitty.fi">pekka.paalanen@haloniitty.fi</a>>:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Fri, 4 Apr 2025 22:14:10 +0300<br>
Andrew Randrianasulu <<a href="mailto:randrianasulu@gmail.com" target="_blank" rel="noreferrer">randrianasulu@gmail.com</a>> wrote:<br>
<br>
> пт, 4 апр. 2025 г., 21:35 Andrea paz <<a href="mailto:gamberucci.andrea@gmail.com" target="_blank" rel="noreferrer">gamberucci.andrea@gmail.com</a>>:<br>
> <br>
> > @Georgy<br>
> > X11 supports CMS more or less well. Even I was able to profile the<br>
> > monitor and install it with colord. It's not full support like Windows<br>
> > or Apple has, but it's doable.<br>
<br>
Hi,<br>
<br>
X11 supports color management by having nothing to do with it. It's a<br>
strictly hands-off design. Each application can choose a different CMS<br>
simultaneously. An application that does not explicitly use a CMS also<br>
does not have any color management with X11.<br>
<br>
The X server can step out of the way and let applications post pixels<br>
as-is to each monitor. This is good for application-side color<br>
management, the pixel values do not get arbitrarily munged. However,<br>
X11 also offers a number of interfaces to force the X server to munge<br>
the pixel values. It allows loading a VCGT, but it also allows any<br>
app to change any of the pixel munging settings, so the display<br>
calibration is fragile.<br>
<br>
On X11 it is the responsibility of each application to make each part<br>
of their windows color-managed for the monitor they happen to overlap.<br>
X11 does nothing to help with that.<br>
<br>
> > For Wayland the big problem, why they didn't want to make a CMS, is<br>
> > its being decentralized, a protocol to which various software could<br>
> > interact by bringing their own version of CMS. The trouble is that a<br>
> > CMS must be centralized by definition, if everyone fakes their own<br>
> > implementation goodbye std.<br>
<br>
In the Wayland model, the color management is centralized in the<br>
Wayland compositor you use. Any application that does not choose to<br>
manage its own colors will get color-managed by the compositor<br>
automatically and unavoidably.<br>
<br>
> > On Wayland, good programmers but bad color scientists, they didn't<br>
> > even know how to start. Then Valve created The Gamescope to be able to<br>
> > play games in HDR, and Wayland started from that to implement its CMS.<br>
<br>
<a href="https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/14" rel="noreferrer noreferrer" target="_blank">https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/14</a><br>
was created 5 years ago.<br>
<br>
<a href="https://github.com/ValveSoftware/gamescope/pull/1168" rel="noreferrer noreferrer" target="_blank">https://github.com/ValveSoftware/gamescope/pull/1168</a> was filed 1 year<br>
ago, after the above had already settled on the fundamental information<br>
to be carried.<br>
<br>
EGL and Vulkan HDR extensions are the real API predecessors here for<br>
both, and ITU-R recommendations and SMPTE specifications have had their<br>
influence as well.<br>
<br>
> > The result is not a real CMS but just something for video games and<br>
> > movies. True, lately they seem to have figured out the problem and one<br>
> > can hope that they will be able to solve it.<br>
<br>
The decision to concentrate first to the HDR aspect was a deliberate<br>
decision due to popular demand. The professional color-managed<br>
workflows were always in my mind from the start. In fact, people were<br>
in a hurry to implement HDR support without any thought to color<br>
management, but I'm really happy to have been able to sell the idea<br>
that color management is a prerequisite to HDR support. Otherwise we<br>
would now have ad hoc HDR support that would quite likely be<br>
fundamentally incompatible with the goals of color management.<br>
<br>
> > For the time being, the main developer said:...<br>
> > The color-management Wayland extension is enough for entertainment<br>
> > purposes like games and movies. However, it is not enough for<br>
> > professional color management needs including photo editing and print<br>
> > preview. The major missing piece is the ability to measure the display<br>
> > response. Every monitor is unique, and measuring is the only way to<br>
> > achieve reliably repeatable and accurate display behavior.<br>
> > ...<br>
> ><br>
> > Introduction to CMS in Wayland by the lead developer:<br>
> ><br>
> > <a href="https://www.collabora.com/news-and-blog/news-and-events/12-years-of-incubating-wayland-color-management.html" rel="noreferrer noreferrer" target="_blank">https://www.collabora.com/news-and-blog/news-and-events/12-years-of-incubating-wayland-color-management.html</a><br>
<br>
You quoted that part, but conveniently ignored everything else that<br>
goes against your statements.<br>
<br>
My plan for display profiling and calibration was documented 2 years<br>
ago:<br>
<a href="https://gitlab.freedesktop.org/pq/color-and-hdr/-/issues/27" rel="noreferrer noreferrer" target="_blank">https://gitlab.freedesktop.org/pq/color-and-hdr/-/issues/27</a><br>
<br>
and this was linked in the text you quoted, and below.<br>
<br>
Note, that it is possible to calibrate and profile a monitor without<br>
anything from issue 27, it's just tedious and error-prone to achieve.<br>
Issue 27 makes that process easier to get right, more robust, and more<br>
user friendly. The one thing that issue 27 does mention is the<br>
programming of a VCGT, but I am unsure whether that has any benefit for<br>
any HDR monitor driven in HDR mode.<br>
<br>
> ><br>
> > A summary by Paalanem of everything that happened in the 12 years of<br>
> > development:<br>
> > <a href="https://gitlab.freedesktop.org/pq/color-and-hdr" rel="noreferrer noreferrer" target="_blank">https://gitlab.freedesktop.org/pq/color-and-hdr</a><br>
> ><br>
> > Old discussion on monitor profiling (in the thread, user Graeme Gill<br>
> > is ArgylCMS's developer):<br>
> > <a href="https://gitlab.freedesktop.org/pq/color-and-hdr/-/issues/27" rel="noreferrer noreferrer" target="_blank">https://gitlab.freedesktop.org/pq/color-and-hdr/-/issues/27</a><br>
> ><br>
> > Wayland CMS implementation in Gnome:<br>
> > <a href="https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4291" rel="noreferrer noreferrer" target="_blank">https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4291</a><br>
> ><br>
> ><br>
> > A theoretical question: can CinGG be adapted to work in Wayland or is<br>
> > it impossible? Has XWayland limitation?<br>
<br>
X11 and Wayland designs for color management are fundamentally<br>
incompatible.<br>
<br>
With X11, applications never tell the display server what kind of<br>
pixels they are producing or which, if any, color profile they used for<br>
the display. With Wayland, applications must describe their pixels to<br>
the display server. Since X11 applications tell nothing to the X server,<br>
Xwayland has no color information to forward to the Wayland compositor.<br>
<br>
There can be case-specific manual solutions, though, that rely on<br>
correctly configuring both the X11 apps and the Wayland compositor. X11<br>
apps need to be configured to render for a specific display profile,<br>
and the Wayland compositor needs to assume the X11 windows are rendered<br>
for the same specific display profile. How that is actually done is up<br>
for each X11 app and each Wayland compositor.<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Is there possibility for X extension for Xwayland allowing relatively simple way to tell Xwayland what to do with each window/region?</div><div dir="auto"><br></div><div dir="auto">A bit like</div><div dir="auto"><br></div><div dir="auto"><a href="https://github.com/oyranos-cms/oyranos/blob/master/libxcm/include/X11/Xcm/Xcm.h">https://github.com/oyranos-cms/oyranos/blob/master/libxcm/include/X11/Xcm/Xcm.h</a></div><div dir="auto"><br></div><div dir="auto">I looked in libplacebo (for avoiding to deal directly with Vulkan et al) and ... it was not simple for me.</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
I happened to see there is a Cinelerra.GG ticket open for ICC support.<br>
A native Wayland application would not necessarily need to work with<br>
ICC profiles, the color management protocol has an alternative<br>
(and HDR-capable!) interface for "parametric image descriptions" which<br>
are much closer to video metadata interfaces than ICC. EGL and Vulkan<br>
color related extensions will map to the Wayland color-management<br>
protocol as the support lands and matures in Mesa, so it's possible to<br>
take advantage of Wayland color features without touching the protocol<br>
yourself.<br>
<br>
> <br>
> IF i understand correctly basically screencapture, user input,<br>
> monitor/compositor all tied to X11. There are (or were) different output<br>
> modules (to DV tape, to mjpeg card), so I guess SOME abstraction between<br>
> core and video i/o exist in cinelerras. Right now cingg reported to work<br>
> over Xwayland but I do not know how any (external) color management etc<br>
> work in this case. Under wayland you need EGL not GLX and cingg uses rather<br>
> obscure Xserver pbuffer mechanism.  Not sure how easy/impossible is to<br>
> rewrite it for EGL.<br>
> <br>
> I do not even know where such questions should be asked now! On xorg-devel?<br>
> in gitlab issues?<br>
> <br>
> cc xorg-devel because I have them in my auto-address book in gmail.<br>
<br>
Wayland-related things can be discussed on wayland-devel@, cc'd, but it<br>
requires subscription to avoid the manual moderation queue when sending<br>
email to it.<br>
<br>
I'm happy to discuss color management topics in<br>
<a href="https://gitlab.freedesktop.org/pq/color-and-hdr/-/issues" rel="noreferrer noreferrer" target="_blank">https://gitlab.freedesktop.org/pq/color-and-hdr/-/issues</a> as well. I'm<br>
also subscribed to argyllcms and lcms-user lists for topics around ICC.<br>
<br>
<br>
Thanks,<br>
pq<br>
</blockquote></div></div></div>