mpv-player / mpv

🎥 Command line video player
https://mpv.io
Other
27.72k stars 2.86k forks source link

Luminance Flicker in HDR Content #13311

Open Aeolus4444 opened 7 months ago

Aeolus4444 commented 7 months ago

Important Information mpv x86_64-v3-2024017-git-926700 Windows 10 Pro x64 22H2 19045.3930 mpv Binary Source: https://sourceforge.net/projects/mpv-player-windows/files/ RTX 3080, Driver 546.65 LG CX 48" HDR Filmmaker Mode, DTM Disabled

Screenshots (These Don't exactly show the flicker but you can see the gamma difference) Ashoka S01E04 (Is quite obvious here but occurs in all HDR content) MPV: mpv-shot0001 VLC (Luminance is consistent at this level): vlcsnap-2024-01-18-12h20m45s294

Reproduction Steps vo=gpu-next (also occurs with vo=gpu) gpu-api=vulkan (also occurs with d3d11) target-colorspace-hint=yes (also occurs without) hwdec=auto (also occurs without) hdr-compute-peak=no (also occurs without)

video-sync=audio interpolation=no

ao=openal

Play any HDR content (most noticable in dark scenes)

Expected behavior Luminance stays consistent throughout a scene (like in VLC)

Actual behavior Luminance flickers constantly throughout every scene

Log file output.txt

ixxbxxx commented 7 months ago

This is due to your CX being in VRR (g-sync) mode. The issue here is that when VRR is enabled, mpv somehow varies the refresh rate considerably (hit the green button 10 times to see the screen refresh rate). If you turn off VRR in NVCP, you would notice the issue goes away.

This is a widely reported issue (just google "VRR gamma flickering" to go down the rabbit hole.

The longer term solution is hopefully one day mpv devs adds a method to support VRR displays

Aeolus4444 commented 7 months ago

Thank you so much, I would never have considered VRR as a potential cause.

Blacklisting mpv from g-sync in NVCP and switching to display-resample and interpolation=yes has completely resolved my issue.

I hope someone figures out a way to properly utilize VRR in a video player, (native display painting at any refresh rate sounds like an awesome feature), but the more reading I do on the issue, the more it seems like VRR and video players just don't mix.