LizardByte / LizardByte/Sunshine

Regression: Display config fails with error 1610 "DisplayModePrepFailed" when forcing exclusive activation on dummy/virtual HDMI display (worked in previous version)

Open
#5,718 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
41.4k
Forks
2.1k
Avg merge
23h 47m
Merged PRs (30d)
124

Description

Is there an existing issue for this?
  • I have searched the existing issues
Is your issue described in the documentation?
  • I have read the documentation
Is your issue present in the latest beta/pre-release?

I'm too lazy to test

Describe the Bug

After updating Sunshine to the latest release, the "Deactivate other displays and activate only the specified display" device configuration option started failing with error 1610 when targeting a dummy/headless HDMI display adapter ("fake HDMI dongle"). This exact same configuration (same hardware, same manual resolution) worked correctly on the previous Sunshine version I had installed before this update — the physical monitor used to power off/blank automatically when streaming started. After updating, the physical monitor stays active and mirrors the stream instead.

I tested with both a manually set 4K resolution (3840x2160) and 1920x1080 — both fail with the identical error, so this is not resolution-specific.

Steps to reproduce:

  1. Connect a dummy/headless HDMI display adapter alongside a real physical monitor.
  2. In Sunshine's Audio/Video configuration, set Display Id to the dummy adapter's device id.
  3. Set Device configuration to "Deactivate other displays and activate only the specified display".
  4. Start a Moonlight stream.
Expected Behavior

The physical monitor is deactivated/blanked and only the dummy display is active during streaming (as it did before updating).

Additional Context

Actual behavior: Display configuration fails, the topology switch is aborted, and the physical monitor stays active and mirrors the stream content instead of going dark.

Target display device info from log:
"device_id": "{5a03e91c-bd36-58a3-9a80-7c42ba0b8874}"
"friendly_name": "BIAZE"
"edid": { "manufacturer_id": "BYZ", "product_code": "009A", "serial_number": 508968592 }
"info": null

This looks related to #3637 (closed as not planned), which shows the same error and the same "info": null device state. However #3637 did not appear to be a regression — mine worked fine before updating and broke immediately after updating to the current release, so I'm filing separately.

Config used:
'dd_configuration_option' = ensure_only_display
'dd_resolution_option' = manual
'dd_manual_resolution' = 3840x2160 (also tested 1920x1080, same failure)
'output_name' = {5a03e91c-bd36-58a3-9a80-7c42ba0b8874}

Host Operating System

Windows

Operating System Version

Windows 11 Pro, build 10.0.26200

Architecture

amd64/x86_64

Package

Windows - msi installer (recommended)

GPU Type

NVIDIA

GPU Model

NVIDIA GeForce RTX 5090 D v2

GPU Driver/Mesa Version

616.92

Capture Method

Desktop Duplication API (Windows)

Apps

Log output

Online logs

https://gist.github.com/supwang/ef89884ef6dccbd78cf30d46dae79241

Contributor guide

Open the contributing guide

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 reproducing the failure with a dummy HDMI display on Windows 11 using dd_configuration_option=ensure_only_display and the provided 4K or 1080p settings. Inspect the linked online log and compare the current release with the previous working Sunshine version around error 1610, DisplayModePrepFailed, and the target device's info:null state. Done means the physical display is deactivated and only the dummy display remains active during streaming.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.