mpv
mpv copied to clipboard
hwdec d3d11va disables VRR
- mpv 0.37.0 1c9c2f5 (shinchiro Windows build)
- Windows 11 23H2 22631.3007
- NVidia RTX 3080 Ti driver 546.65 (latest)
Reproduction steps
Can be reproduced with:
-
mpv --no-config --fs --hwdec=d3d11va
-
mpv --no-config --fs --hwdec=auto-safe
(which resolves tod3d11va
on my system) -
mpv --no-config --fs --hwdec=d3d11va --vo=gpu-next
Can NOT be reproduced with:
-
mpv --no-config --fs --hwdec=no
-
mpv --no-config --fs --hwdec=d3d11va-copy
-
mpv --no-config --fs --hwdec=dxva2
-
mpv --no-config --fs --hwdec=vulkan --gpu-context=winvk
-
mpv --no-config --fs --hwdec=nvdec --gpu-context=winvk
So clearly this is specific to d3d11va
in direct mode.
Expected behavior
Video plays with display VRR, i.e. the display refresh rate locks to the video frame rate.
Actual behavior
Display refresh rate stays at the Windows-configured default.
I have hard proof of this because I use the hidden VRR info menu on my LG G1 TV which shows instantaneous refresh rate in real time.
Log file
Sample files
I can reproduce this with pretty much any input. Here's a short synthetic test video with a silly 92.907 FPS framerate as an example.
As a side note, I was able to find at least one other user report of this problem.
Can't seem to reproduce on my 6700XT.
This was brought up in irc awhile back and the conclusion was that it comes down to an issue with NVIDIA's drivers. I am not sure if mpv can actually do anything about this.
This was brought up in irc awhile back and the conclusion was that it comes down to an issue with NVIDIA's drivers. I am not sure if mpv can actually do anything about this.
Maybe blacklisting driver version from using d3d11va in auto-safe?
Works for AMD (tested on my 6950XT)
Maybe try NVIDIA Inspector and overwrite GSYNC flags on mpv.exe with it.