libretro / libretro/RetroArch

Vulkan video driver makes direct scanout not work on KDE Wayland.

Open
#18,715 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug: wayland
Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Is there an existing issue for this?
  • This is a bug in RetroArch frontend
  • I have searched the existing issues
Description

On Linux, when the video driver is set to vulkan, direct scanout does not work on KDE Wayland. Direct scanout lowers video latency by bypassing the compositor, so it is desirable to have.

Expected behavior

Direct scanout should activate as it does when using the gl driver.

Steps to reproduce the bug
  1. Activate the "show compositing" effect in the kwin debug console, which can be opened using the command "qdbus org.kde.KWin /KWin showDebugConsole". It displays red text in the top right corner when compositing is active.
  2. Launch Retroarch in full screen using the gl driver.
  3. Observe that the red text disappears, indicating that direct scanout has been activated.
  4. Change the video driver to vulkan. Close Retroarch and reopen it.
  5. Observe that the red text is still there, indicating that direct scanout is not activated.
Version/Commit

1.22.2 (Git 502c425)

Bisect Results

No response

Present in the nightly version

Yes, this is reproduced in the nightly build

Platform & operating system

Linux EndeavourOS x86_64

Affected Cores

No response

Environment information
  • Window Manager: Wayland
  • Installed through AppImage
Relevant log output

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

Reproduce the issue on Linux with KDE Wayland using the listed qdbus KWin debug-console command, comparing fullscreen GL and Vulkan runs. Trace the frontend's Vulkan and GL fullscreen paths; done means Vulkan also activates direct scanout, shown by the compositing indicator disappearing.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
computer-graphics, desktop, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.