mpv-player / mpv-player/mpv

Linux: True/exclusive fullscreen mode

Open
#8,523 22 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

core:video meta:feature-request os:linux
Dominant language
C
Stars
37k
Forks
3.5k
Avg merge
1d 10h
Merged PRs (30d)
22

Description

On Windows with a FreeSync/G-Sync monitor and supporting GPU, variable refresh rate works out of the box in (exclusive?) fullscreen mode - and that is a good thing if Low Framerate Compensation works correctly (or the monitor's VRR range is sufficiently low). On Linux, there does not seem to be any way to achieve this.

VRR otherwise works on my Linux system (FreeSync monitor, Vega 64, Manjaro Testing, 5.10 kernel, KDE Plasma 5.20@X11), https://github.com/Nixola/VRRTest and Doom (in both Vulkan and OpenGL modes) run flawlessly.

I have tried both Vulkan implementations for AMD, various outputs/apis and options (opengl-swapinterval=0, vulkan-swap-mode=immediate, x11-bypass-compositor=yes, override-display-fps...), disabling the compositor etc.

It seems that there is simply no support for actual/exclusive fullscreen mode on Linux. I would love for this feature to be added (for instance utilizing Vulkan's VK_EXT_full_screen_exclusive).

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing mpv's Linux fullscreen handling and Vulkan output path, then compare the requested VK_EXT_full_screen_exclusive behavior with the existing fullscreen and display options listed in the issue. Done means Linux users can request true or exclusive fullscreen and achieve the expected VRR behavior, with the relevant display paths verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.