Hyprland
Hyprland copied to clipboard
VFR causes white flashes on some hardware
About every 20-60 seconds, I get random white flashes on my monitor. This never happened before c0c75db62188667a4f42aef1ae6bfd8034093af7 .
GPU is a RX 6700XT.
hm, weird. Maybe I should add an option to disable it. Maybe your monitor doesn't like it..?
also by flashes you mean just one blink or multiple?
added misc:no_vfr
in 29e2bb27f6073695aa4f9767f87cd653db5ce811, you can use that
Flashes are one at a time. I'll try that in the morning.
Also can I ask exactly what VFR is?
variable frame rate.
Gotcha, it's probably my monitor not liking that. I'll lyk the results in the morning
I get frame tears pretty aggressively with the update and mpvpaper on update from 0.6.2 to 0.7.0
Will try this as well (except black flashes?)
edit: yeah. So far so good
maybe vfr should be off by default.
runs perfectly fine for me but I can see it doesnt for some.
maybe vfr should be off by default.
Agreed.
it now is
Cool. This issue should still be open until the issue is fixed, unless it's not planned.
dunno how to fix it, and additionally it seems like a monitor / driver issue
Hm... maybe something that could be addressed far down the line?
I can confirm that this also happens for me, upon enabling vfr, white stuff flashes starts to happen RX 5700xt with mesa driver
I may have something interesting to try out, for people affected by this issue. On my setup (AOC AG27QXP + Radeon 5700XT) I have noticed that adaptive sync can work just fine under Wayland GNOME (using Mutter), but the two wlroots compositors I have tried had issues out of the box. These two being Sway and Hyprland. When I used Sway I figured out (by accident) that if I switched the refresh rates around a few times, I would get rid of the white flashing normally caused by adaptive sync/vfr options. I tried doing it with the Hyprland equivalent commands and it worked. So I just wanted to share it, in case others have the same issue. I have not seen any mention of a solution anywhere. My display is 165hz adaptive sync, and to get it working without any white flashing I ran these three commands:
hyprctl keyword monitor DP-1,2560x1440@60,0x0,1
hyprctl keyword monitor DP-1,2560x1440@120,0x0,1
hyprctl keyword monitor DP-1,2560x1440@165,0x0,1
These are what worked for me, so I just threw them in a script that is executed once per startup. Because there is no sleep in between, it takes less than a second. The monitor blacks out in the switch from 60hz SDDM anyways, so I don't even notice it.
It did take a bit of experimenting, so your results may vary. But please let me know if this method is viable on your setup.
follow the issue here: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3514
The brightness flickering that you describe in the wlroots question is exactly what I experience before setting the mode a few times. And only on the VFR monitor. The other one is fine. This also happens on sway for me, and the fix is also the same, just using swaymsg instead.
If you can comment there too with all your findings it'd be great. Let me try on my monitors. Funnily enough, both are VFR but I don't notice the flickers on one of them. Maybe I am just blind.
oh shit you're right, it does seem to go away if I reload the mode. Wtf? Comment there please, I'll add too.
think I fixed it in 1b349f79acd29bf7589472147ec3853b6cad71b7
anyone can confirm?
Can check in ~1h if nobody else does it before me.
Just checked and seems to have no abrupt brightness changes anymore
waiting for OP @ThatOneCalculator
That sounds really promising! Pretty wild if you managed to fix it. I was just about to post something in the gitlab thread, but it seems outdated and redundant now. EDIT: I have tested the latest git version and the problem with flickering brightness seems to persist for me.
I just woke up. Give me <30 mins 🙏
After extensive testing I believe this issue is now resolved.
Happening to me quite extensively if I don't have "no_vfr = true" set. Pretty frustrating.