summaryrefslogtreecommitdiffstats
path: root/video/out/drm_atomic.h
diff options
context:
space:
mode:
authorPhilip Langdale <philipl@overt.org>2022-04-03 20:08:33 -0700
committerPhilip Langdale <github.philipl@overt.org>2022-04-05 20:56:36 -0700
commit73a06ffae663e9fb78c5dff4b6bd01a637296a69 (patch)
tree22672b7d07e0ed0c53ea4817015481143f0b6d6d /video/out/drm_atomic.h
parentf61eda0f5e9f8085003c4c31111db525a438cbc1 (diff)
downloadmpv-73a06ffae663e9fb78c5dff4b6bd01a637296a69.tar.bz2
mpv-73a06ffae663e9fb78c5dff4b6bd01a637296a69.tar.xz
drm: context_drm_egl: add support for enabling VRR
Variable Refresh Rate (VRR), aka Freesync or Adaptive Sync can be used with DRM by setting the VRR_ENABLED property on a crtc if the connector reports that it is VRR_CAPABLE. This is a useful feature for us as it is common to play 24/25/50 fps content on displays that are nominally locked to 60Hz. VRR can allow this content to play at native framerates. This is a simple change as we just need to check the capability and set the enabled property if requested by the user. I've defaulted it to disabled for now, but it might make sense to default to auto in the long term.
Diffstat (limited to 'video/out/drm_atomic.h')
-rw-r--r--video/out/drm_atomic.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/video/out/drm_atomic.h b/video/out/drm_atomic.h
index 5b2dc5976d..32e56c7f97 100644
--- a/video/out/drm_atomic.h
+++ b/video/out/drm_atomic.h
@@ -56,6 +56,7 @@ struct drm_atomic_state {
struct {
struct drm_mode mode;
uint64_t active;
+ uint64_t vrr_enabled;
} crtc;
struct drm_atomic_plane_state draw_plane;
struct drm_atomic_plane_state drmprime_video_plane;