9 ms·
Developing Wayland Color Management and High Dynamic Range
- kinleyd 6y agoHaving just emerged from an exploratory dive into Wayland, this thread popping up here is surely a sign from the gods. :) It's been a good experience: Weston, sway and Wayland itself have such tiny foot prints while doing so much. I haven't tried qtwayland and some of the others mentioned and will give them a run out. I didn't have any problems on Arch but for some reason Weston wouldn't build on GuixSD which I am also exploring. One fun part was having to use the flag --my-next-gpu-will-not-be-nvidia to invoke wayland against Nvidia drivers. It isn't supported and promptly crashes anyway. I was glad I had a Radeon gpu also installed, on which I continue a most satisfactory exploration.
- SahAssar 6y ago> One fun part was having to use the flag --my-next-gpu-will-not-be-nvidia to invoke wayland against Nvidia drivers. That's because of sway, not because of wayland. Sway's creator has a (justified) vendetta against Nvidias linux drivers.
- kinleyd 6y agoIt's certainly in keeping with a fine tradition! "This kernel is tainted by Nvidia." is another I remember, as of course that notable middle finger that was thrust skyward in similar context.
- deleted 6y ago[deleted]
- yepthatsreality 6y ago> If you are an expert on the topics of color management or HDR displays and content, or a developer interested in contributing to the project, you are warmly welcome to join the development.
- cpach 6y agoInteresting. Does anyone know what kind of stake Collabora has in Wayland? So far it has seemed to me that there aren’t many commercial backers of Wayland. But if there is, I guess it’s good for the project. Creating a desktop environment of high quality takes lots of really hard work, just look at all the enourmous resources that Next/Apple/Microsoft has spent on their desktop environments.
- ognarb 6y agoWayland is heavily used in the embedded world. But the embedded world is not using KWin, Mutter or Sway but instead more minimal compositors like Qt Wayland compositor or Weston.
- O_H_E 6y agoInteresting. Nice to know. Never heard of Wayland outside the context of desktops.
- skykooler 6y agoIt's also used on at least two mobile OS's - Sailfish OS and Plasma Mobile.
- sho_hn 6y agoCars and TVs extensively use Wayland, e.g. LG's.
- thayne 6y agoNon desktop usecases are actually a major driver for wayland adoption, because x11 is very much designed for desktop, whereas wayland is intended to be more general.
- ddingus 6y agoDoesn't this ultimately mean X11 is needed? People keep arguing away the more advanced use cases. Others keep saying those use cases matter. So... Either, Weyland eventually ends up satisfying those use cases, and a lot of apps that go with them , or?
- BlueTemplar 6y ago> Most of the desktop applications (well, literally all right now) are using Standard Dynamic Range (SDR). Wait, does that mean that Firefox, Gimp, VLC... when run in X11, do not currently support HDR ? What about gamuts other than sRGB ? Anyway, sound like this means that my old wide gamut monitor should eventually be able to show at least partially the 'HDR gamuts' (and luminosities) ? That would be great!
- jiggawatts 6y agoPractically nothing in the PC world properly supports either HDR, wide gamut colour, or even just mapping to the physical display gamut in general. There are bout half a dozen things you can do, in some configurations, sometimes, where everything will "work". Anything else is a total shitshow. It all goes back to generations of developers assuming that a pixel is an RGB triple of bytes in the range 0..255 in the sRGB colour space. Millions of lines of code have been written when "images" are "byte[]" or "struct {r: byte; b: byte; g: byte} []" or the equivalent. First of all, there's an implicit assumption by most programmers that this is a linear colour space. It isn't. The (127,127,127) pixel colour is not 50% grey! Not even close. Even Adobe Photoshop made this mistake. Second, monitor manufacturers like to stretch colours to the maximum (native) display capability, because it makes them stand out more in the shop. Everyone wants the monitor that makes the colours "pop". Unfortunately, this means that with modern wide-gamut monitors, skin tones are so stretched that everyone looks like they're in clown make-up. Third, Microsoft is the laziest company you can possibly imagine. They will not lift a finger to do anything other than the bare minimum, which then they will never touch again unless forced to at gunpoint. Hence, Windows had colour management technically added to it back around the year 2000, in the sense that it has a handful of colour management pieces that never do anything unless explicitly invoked by applications such as Adobe Photoshop. Nothing has changed since, other than a new "HDR mode" that blurs text, turns the brightness down, and is only suitable for gaming in a dark room. Fourth, the 10-bit-per-channel displays required for HDR were sold only to professionals, so of course NVIDIA and ATI milked this market for all it was worth. Until very recently, 10-bit output was available on most consumer cards but disabled in the drivers. You had to buy the Quadro "professional" cards with identical chips, but different drivers. As you can imagine, practically nothing in Windows (or Linux) can output 10 bit, other than a handful of video viewing apps. Web browsers certainly can't. Even games that do compositing with 16-bit buffers output 8 bit only unless they were explicitly made for HDR. Even those still refuse to output 10 bit SDR or wide-gamut SDR even if it's available. Fifth, because of the deliberate hardware limitations and the completely uncalibrated $150 budget displays most people buy, support for anything other than sRGB and SDR was pointless in file formats, so nobody bothered to lift a finger. Not the standards bodies, not Microsoft, not Linux, not anyone[1]. As of 2021, it is impossible to do any of the following in the general case: - Send someone a HDR still image file. - Send someone a HDR video and expect it to work in anything other than the YouTube app on a handful of platforms. - Send someone a 10-bit or better file and expect it to actually deliver a benefit - Send a wider-than-sRGB file and expect it to display correctly, even on an sRGB monitor. Expect clowns or zombies, not proper skin tones. (I wrote a similar rant back in 2020, and 2019, and 2018, back all the way to 2010. This will not change in 2022. Or 2023. Or...) 1] Okay, I tell a lie: Apple did actually make all of the above work! Nobody else though. Right now, within the Apple ecosystem only, I can: - Send someone a 10-bit, Display-P3 image and it'll display perfectly. Better colour, calibrated, smoother gradients. - Send a wider-than-Display-P3 image and it'll also be correctly displayed, not stretched unpredictably like it would be on a PC. - Send a HDR video in 10-bit Dolby Vision as a chat message and it'll work. Etc... Everywhere else though, no chance.
- viraptor 6y ago> This work is likely to take months still before there is a complete tentative protocol, and probably years until these features are available in your favourite Wayland desktop environments. I really appreciate the realistic timelines and honesty here.