-
-
Notifications
You must be signed in to change notification settings - Fork 912
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HDR support in Hyprland #4933
Comments
No; I don't have an HDR display. Feel free to MR, though, nothing against it. |
Okay, thank you |
what's MR stand for? also if someone contributed an HDR display to you, would this at all change the priority for you? |
merge request. And please dont contribute an hdr display to me. |
haha ok well. I'm not a C++ dev, so I'm not really able to create a patch to add this support, but it is super important to me. if there's something that would be useful to you that'd encourage you to work on it, just say the word. |
I looked through the specs of my laptop and it should support HDR? Anyways, we still should wait for the w-p, KDE uses a vendored, custom protocol it seems. https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/14 Also why was this closed? It hasn't been solved? I can dig into HDR a bit if my laptop proves to be actually compatible with HDR Edit: looked around, this first needs support in wlr. |
Yes, those specs indicate your laptop has an OLED panel which will deliver an excellent HDR experience. It'll work for testing. @Swomp2 It'd be great if you could reopen this issue to track progress. |
Regarding the general state of HDR on Linux things are still in their infancy. @Zamundaaa has great blog posts about it but the TLDR is that most things aren't finalized or merged yet. I believe theoretically any WM can implement HDR in a way that works with a hacky Vulkan layer at the moment. I imagine this is practically impossible for something based on wlr though. I'm far from an expert so any and all corrections are welcome. |
I closed the issue because I thought no one would be interested in it + personally, I’m not a programmer and I won’t be able to add anything (( |
still it's better to have a place to track it |
HDR on hyprland would be crazy! |
Lack of HDR support is the only reason why I'm not making the full switch from KDE, would love for this to happen |
The enthusiasm is nice but HDR won't be implemented until the wlroots MR is merged. |
Btw, because Hyprland ship with its own wlroots, is it possible to patch wlroots with that MR? @vaxerski I'm not familiar with color transformation, is there anything I can help? My suggestion is first we enable hdr metadata on compositor level with sdr -> hdr tone mapping, next step will be protocol implementation so client can show their hdr contents. |
we don't patch wlroots at all, we don't maintain a fork either. So, no. |
Is there a way to enable our custom wlroots? Because when I try to enable the Vulkan renderer in my multi head setup, everything breaks 😆 And to use the Wayland HDR we need Vulkan (or at least trying with gamescope) |
No.
Hyprland doesn't support vulkan as a backend
This is false. |
I don't know if vulkan is really needed, using wlroots directly. But acording to this post from a KDE developer, you need to install a vulkan layer to be able to use HDR to play the games in Kwin6 using HDR 😄 If we (or i) can help in something, i could help code or reserach a bit more to see what's needed. EDIT: in wlroots and sway they are testing adding color profiles. This is the MR https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4280 |
After reading this I'm wondering if I am missing something integral to the conversation.
Edit: Reverting SDDM did not return Hyprland to SDR. |
kek drm did something funny. I assume then that SDDM was running with KDE as a backend which supports HDR. Setting an HDR "mode" is the simple part of HDR and KWin probably submitted that to the pipeline Hyprland doesn't support the HDR "mode" hints and thus can't change it. That's my guess. Tho I have very little knowledge about HDR internals |
I fixed it by strictly disabling HDR and Wide Color Gamut in the SDDM kwinoutputconfig.json file. This means there isn't any HDR in the pipeline for Hyprland. Finally have proper colors, and it doesn't affect my Plasma session HDR. If anyone wants a hacky way to enable DE HDR on Hyprland... |
Enabling HDR in Plasmas 6 requires setting the following envrionment variables: export KWIN_DRM_ALLOW_INTEL_COLORSPACE=1 |
Is there any update on this? That would be great if Hyprland supports HDR because I just ordered an HDR monitor (jk lol) |
not atm |
For subscribers: I believe HDR is no longer blocked on upstream wlroots since Hyprland migrated to aquamarine in #6608. |
correct, though worth noting it will require support in both aq and hl. The first (easy) step would be to implement what KDE did - just the hdr profiles (not the actual data, IIRC that's still blocked on w-p mesa and kernel) |
WOW!! |
The only way I play HDR now is by switching to gamescope session, which has... quite a few inconveniences. Checked the post because I remembered that we're switching backends, so this is great to hear. Please call me when/if ever it's time for testing, thanks. (Or if there is work to be done I suppose, I can try but don't expect my C++ skills :p) |
Sadly gamescope is not a solution for everyone as it doesn't work well with NVIDIA gpus. The gamescope session also doesn't work out of the box if you are not using systemd. |
aren't those both owned by hyprwm? why can't we be like the KDE devs and implement it... also do we need that protocol? Like other wayland protocols, will take forever to merge 😭 |
because KDE has 50 full-time paid developers |
true... EDIT: some other WMs already started working on it: |
Description
So, plasma 6 was recently released and has initial HDR support, which, as far as I know, can be ported to other graphics environments. GNOME, according to rumors, will also soon receive HDR support. Do you have any future plans to bring HDR to hyprland?
The text was updated successfully, but these errors were encountered: