Skip to content

KWin ScreenCast: "no more input formats" on Steam Deck LCD (rotated eDP-1 panel) — persists across encoders, OS versions, output_name, and maxBitsPerColor overrides #5499

Description

@spydergto

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-persistent via steamos-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, native 800x1280, transform: Rotated270 (portrait panel rotated in software), reported as HDR: incapable, Wide Color Gamut: incapable, but Color resolution: automatic (10) per kscreen-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:

  1. Latest pre-release build: Tested against v2026.808.164219 (pre-release, includes fix(wayland): support DMA-BUF modifiers for wlroots capture 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 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

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