Skip to content

(MacOS) Variable refresh only works when using Fullscreen mode with V-sync #1509

Description

@trilantis

Describe the bug
This may be more of a MacOS bug than Moonlight, but when using the MacOS client, VRR only seems to work when using the "Fullscreen" display mode with V-sync enabled. Confirmed this using the OSD on my monitor and trying the various display options available in Moonlight.

The tooltip mentions that "Fullscreen" mode offers better performance, but there should likely also be a note in there about VRR only working in that mode as well.

Steps to reproduce

  • Ensure monitor is set to variable refresh in MacOS Display Settings.
  • Enable "display frame rate" option in monitor OSD.

In Moonlight:

  • Start stream using "Borderless Windowed" display mode, monitor will be locked at 143hz (or top end of monitor refresh)
  • Quit stream, change display mode to "Fullscreen" and enable Vsync (and optionally frame pacing).
  • Start stream, monitor will show variable FPS. Locking a game to, for example, 72fps will lock monitor to 72hz as expected.

Other Moonlight clients

  • Does the issue occur when using Moonlight on iOS or Android?
    Not that I know of.

Client PC details (please complete the following information)

  • OS: MacOS Sequoia 15.2
  • Moonlight Version: 6.1.0
  • GPU: Apple M4 / Mac mini

Server PC details (please complete the following information)

  • OS: Windows 11 24H2
  • Sunshine or GeForce Experience version: Sunshine v2025.110.45857
  • GPU: NVIDIA GeForce RTX 4070 Ti Super
  • GPU driver: 566.36

Moonlight Logs (please attach)
N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions