Public bug reported:

System: Kubuntu 26.04 LTS
KDE Plasma: 6.6.4
KRDP version: 6.6.4-0ubuntu1
NVIDIA Driver: 595.71.05
Kernel: 7.0.0-22-generic
GPU 1: Intel iHD (card1/renderD128)
GPU 2: NVIDIA T1000 (card2/renderD129)

PROBLEM:
Connecting via Windows 11 mstsc RDP client to KRDP results in 
a permanent black screen. Authentication succeeds, portal session 
starts, PipeWire pipeline connects, x264 initializes, but no 
frames are ever rendered.

ROOT CAUSES IDENTIFIED THROUGH DIAGNOSIS:

1. MISSING DESKTOP FILE: krdpserver registers app ID as 
   'org.kde.krdp-server' but the installed desktop file is named 
   'org.kde.krdpserver.desktop' (missing hyphen). This causes:
   "Could not register app ID: App info not found for 
   'org.kde.krdp-server'"
   
   Workaround: 
   sudo ln -s /usr/share/applications/org.kde.krdpserver.desktop \
   /usr/share/applications/org.kde.krdp-server.desktop

2. NVIDIA VA-API CRASH (SIGSEGV): Without nvidia-vaapi-driver 
   installed, krdpserver crashes with Signal 11 in libavutil.so.60 
   when VA-API fails and falls back to x264 in a dual-GPU 
   environment.
   
   Workaround: sudo apt install nvidia-vaapi-driver

3. MB RATE EXCEEDED: At 4K resolution (3840x2160@30fps), 
   x264 MB rate (32,400,000) exceeds level limit (16,711,680).
   krdpserver initializes x264 but silently encodes no frames.
   KRDP needs to either cap the stream resolution or negotiate 
   a higher H.264 level with the client.

4. GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT: The core blocking bug.
   When KWin uses NVIDIA (card2) for compositing, the screencast 
   pipeline produces empty buffers:
   
   kwin_scene_opengl: GL_INVALID_OPERATION - image and target 
   are incompatible
   kwin_scene_opengl: Invalid framebuffer status: 
   GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT
   kwin_screencast: "DP-5" Received stream buffer that does 
   not contain user data
   
   This is caused by NVIDIA's EGL/GBM implementation not 
   supporting the texture format KWin uses for screencast 
   framebuffer attachment. The PipeWire link shows state=active 
   with BGRA 1920x1080 format negotiated, but all buffers contain 
   no pixel data. krdpserver CPU usage remains at ~1% confirming 
   no frames are being encoded.
   
   /etc/environment on this system contains:
   GBM_BACKEND=nvidia-drm
   __GLX_VENDOR_LIBRARY_NAME=nvidia
   KWIN_DRM_DEVICES=/dev/dri/card2
   
   These settings are required for the desktop to function but 
   cause the screencast framebuffer failure.

ADDITIONAL NOTES:
- KWIN_DRM_FORCE_SOFTWARE_CAPTURE=1 is set but does not resolve 
  the issue
- KWIN_SCREENCAST_ALLOW_DMABUF=0 does not resolve the issue
- Switching display to 1080p does not resolve the issue
- The bug appears specific to NVIDIA+Intel dual GPU systems where 
  NVIDIA is used for KWin compositing
- krfb (KDE VNC server) works as a workaround but with poor 
  performance

** Affects: krdp (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2156242

Title:
  KRDP black screen on NVIDIA+Intel dual GPU system -
  GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT in KWin screencast

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/krdp/+bug/2156242/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to