LizardByte / LizardByte/Sunshine
KWin ScreenCast: "no more input formats" on Steam Deck LCD (rotated eDP-1 panel) — persists across encoders, OS versions, output_name, and maxBitsPerColor overrides
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?
This issue is present in the latest pre-release
Describe the Bug
Environment
- Sunshine version: 2026.516.143833 (flatpak, installed both via Flathub and via direct GitHub release bundle — identical behavior on both)
- OS: SteamOS 3.8.16 (also reproduced identically on 3.8.16 → rolled back to 3.8.14 via RAUC slot switch, confirmed via
/etc/os-release) - Desktop session: KDE Plasma Wayland (
plasma-wayland-persistentviasteamos-session-select) - KWin version: 6.4.3-2 (
xdg-desktop-portal-kde) - GPU: AMD Van Gogh APU (Steam Deck LCD), amdgpu/radeonsi driver, Mesa 25.3.0.213835
- PipeWire: 1.6.4
- Display: internal panel
eDP-1, native800x1280,transform: Rotated270(portrait panel rotated in software), reported asHDR: incapable,Wide Color Gamut: incapable, butColor resolution: automatic (10)perkscreen-doctor -o
Describe the Bug
KWin direct ScreenCast capture (kwingrab) on the Steam Deck's internal panel consistently fails to produce any video frames. The stream connects to PipeWire successfully but immediately fails format negotiation and loops indefinitely (~1.5s cycle) with:
- Latest pre-release build: Tested against v2026.808.164219 (pre-release, includes fix(wayland): support DMA-BUF modifiers for wlroots capture #5132 and feat(linux/pipewire): add fallback to node id if connection via object serial fails #5302). The underlying "no more input formats" PipeWire error still occurs identically during the encoder-probing phase. However, once probing settled on the Vulkan encoder path (h264_vulkan), the actual live Moonlight stream connected and produced a solid green frame instead of black — suggesting a YUV color/chroma format mismatch on the decode side, while the background capture loop continued failing with the same PipeWire error independently. It went from black screen to green screen
Expected Behavior
Expected the Moonlight stream to display the live desktop/game content from the Steam Deck, allowing normal remote play. Instead, the connection succeeds (pairing works, ports bind, client shows "connected") but no usable video frame is ever rendered — either a solid black frame (older build) or a solid green frame (pre-release build v2026.808.164219), with the underlying PipeWire capture continuously failing and retrying in the background.
Additional Context
No response
Host Operating System
Linux
Operating System Version
Linux cachyos 6.19.8-arch1-3-surface #1 SMP PREEMPT_DYNAMIC Sat, 09 May 2026 10:41:21 +0000 x86_64 GNU/Linux
Architecture
amd64/x86_64
Package
Linux - flathub/flatpak
GPU Type
AMD
GPU Model
AMD Van Gogh (Steam Deck LCD APU, integrated Radeon RDNA2)
GPU Driver/Mesa Version
Mesa 25.3.0.213835 (radeonsi_25.3.0-4.1)
Capture Method
wlroots (FreeBSD/Linux)
Apps
Log output
[2026-08-11 20:44:29.029]: Info: [kwingrab] Found output: eDP-1 order: 0 position: 0x0 resolution: 800x1280
[2026-08-11 20:44:29.029]: Info: Screencasting with KWin ScreenCast
[2026-08-11 20:44:29.029]: Info: [pipewire] Requested frame rate [60fps]
[2026-08-11 20:44:29.029]: Info: [wayland] Found display [wayland-0]
[2026-08-11 20:44:29.046]: Info: [kwingrab] Pipewire stream created: node=138
[2026-08-11 20:44:29.046]: Info: [kwingrab] Screencasting output name eDP-1 position 0x0 resolution 800x1280
[2026-08-11 20:44:29.046]: Info: [pipewire] Streaming display 'eDP-1' offset: 0x0 resolution: 800x1280
[2026-08-11 20:44:29.046]: Info: [wayland] Found display [wayland-0]
[2026-08-11 20:44:29.046]: Info: [wayland] Found interface: zxdg_output_manager_v1(32) version 3
[2026-08-11 20:44:29.046]: Info: [wayland] Found interface: zwp_linux_dmabuf_v1(57) version 5
[2026-08-11 20:44:29.047]: Info: [wayland] Found interface: wl_output(65) version 4
[2026-08-11 20:44:29.047]: Info: [wayland] Resolution: 800x1280
[2026-08-11 20:44:29.047]: Info: [wayland] Offset: 0x0
[2026-08-11 20:44:29.047]: Info: [wayland] Logical size: 1280x800
[2026-08-11 20:44:29.047]: Info: [wayland] Name: eDP-1
[2026-08-11 20:44:29.047]: Info: [wayland] Found monitor: Valve Corporation ANX7530 U
[2026-08-11 20:44:29.052]: Info: [pipewire] PipeWire stream state: unconnected -> connecting
[2026-08-11 20:44:29.053]: Info: [pipewire] Connected to pipewire version 1.6.4
[2026-08-11 20:44:29.082]: Info: [pipewire] PipeWire stream state: connecting -> paused
[2026-08-11 20:44:29.128]: Info: [pipewire] PipeWire stream error 'no more input formats' on state: paused -> error
[2026-08-11 20:44:29.128]: Info: [pipewire] Pipewire Error, id:2 seq:16 message: no more input formats
[2026-08-11 20:44:30.569]: Warning: [pipewire] PipeWire stream disconnected. Forcing session reset.
--- This exact cycle repeats every ~1.5 seconds indefinitely. Full log with every repetition (spanning the whole troubleshooting session) provided via gist link below. ---
Online logs
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The payload names the kwingrab capture path and PipeWire stream negotiation but no source files or tests. Start by tracing that entry point while reproducing capture on the rotated eDP-1 output, then compare the negotiated formats with the Vulkan encoder path. Done means the capture loop stops retrying and Moonlight renders live content instead of a black or green frame.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, linux
- Domain
- audio-video-rtc, desktop, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 45/100