[PR #425] [MERGED] fix(nvidia): bump gst-wayland-display to fix Blackwell black screen #460

Closed
opened 2026-10-15 13:00:44 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/games-on-whales/wolf/pull/425
Author: @JBailes
Created: 6/8/2026
Status: ✅ Merged
Merged: 6/8/2026
Merged by: @JBailes

Base: stable ← Head: fix/bump-gst-wayland-display


📝 Commits (1)

  • 84cd5d7 fix(nvidia): bump gst-wayland-display to fix Blackwell black screen

📊 Changes

1 file changed (+3 additions, -1 deletions)

View changed files

📝 docker/wolf.Dockerfile (+3 -1)

📄 Description

Problem

On NVIDIA GPUs the zero-copy CUDA pipeline shows a black screen / no image (reported in #417, seen on RTX 50xx). The stream connects and the encoder negotiates, but every frame is black.

Root cause

The virtual compositor renders into an AR24 (BGRA) dmabuf and imports it into CUDA. To build the GstCudaMemory it derives a VideoFormat from the DRM fourcc, but the pinned gst-wayland-display (67b1183) used VideoFormat::from_fourcc, whose underlying gst_video_format_from_fourcc only handles YUV formats. For AR24 it returns the wrong/unknown format, so the buffer is built with the wrong layout and decodes to black.

This was already fixed upstream in gst-wayland-display by e89c1a2 ("use proper function to get VideoFormat from fourcc", switching to gst_video_dma_drm_fourcc_to_format). The wolf image just pins a commit that predates it.

Fix

Bump the pinned gst-wayland-display from 67b1183 to current stable c49af96, which includes e89c1a2. No other changes.

Testing

RTX 5080 (driver 610.43.02, CUDA 13, sm_120): with 67b1183 the zero-copy CUDA stream is black; rebuilt against c49af96 it streams correctly (verified in-game in Steam). The EGL→CUDA frame imports as a CUDA array and cudaconvertscale/nvenc produce a correct image.

Fixes #417


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/games-on-whales/wolf/pull/425 **Author:** [@JBailes](https://github.com/JBailes) **Created:** 6/8/2026 **Status:** ✅ Merged **Merged:** 6/8/2026 **Merged by:** [@JBailes](https://github.com/JBailes) **Base:** `stable` ← **Head:** `fix/bump-gst-wayland-display` --- ### 📝 Commits (1) - [`84cd5d7`](https://github.com/games-on-whales/wolf/commit/84cd5d7a0d38ac97e02892a9adff68ffdcdc5519) fix(nvidia): bump gst-wayland-display to fix Blackwell black screen ### 📊 Changes **1 file changed** (+3 additions, -1 deletions) <details> <summary>View changed files</summary> 📝 `docker/wolf.Dockerfile` (+3 -1) </details> ### 📄 Description ## Problem On NVIDIA GPUs the zero-copy CUDA pipeline shows a **black screen / no image** (reported in #417, seen on RTX 50xx). The stream connects and the encoder negotiates, but every frame is black. ## Root cause The virtual compositor renders into an `AR24` (BGRA) dmabuf and imports it into CUDA. To build the `GstCudaMemory` it derives a `VideoFormat` from the DRM fourcc, but the pinned `gst-wayland-display` (`67b1183`) used `VideoFormat::from_fourcc`, whose underlying `gst_video_format_from_fourcc` **only handles YUV formats**. For `AR24` it returns the wrong/unknown format, so the buffer is built with the wrong layout and decodes to black. This was already fixed upstream in gst-wayland-display by [`e89c1a2`](https://github.com/games-on-whales/gst-wayland-display/commit/e89c1a2) ("use proper function to get `VideoFormat` from fourcc", switching to `gst_video_dma_drm_fourcc_to_format`). The wolf image just pins a commit that predates it. ## Fix Bump the pinned `gst-wayland-display` from `67b1183` to current stable `c49af96`, which includes `e89c1a2`. No other changes. ## Testing RTX 5080 (driver 610.43.02, CUDA 13, sm_120): with `67b1183` the zero-copy CUDA stream is black; rebuilt against `c49af96` it streams correctly (verified in-game in Steam). The EGL→CUDA frame imports as a CUDA array and `cudaconvertscale`/nvenc produce a correct image. Fixes #417 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-15 13:00:44 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
games-on-whales/wolf#460
No description provided.