8000 Black preview on KDE Plasma 6 Wayland (Hue works, screen capture selected) · Issue #16 · enginkirmaci/lumux · GitHub
[go: up one dir, main page]

Skip to content

Black preview on KDE Plasma 6 Wayland (Hue works, screen capture selected) #16

Open

Description

@godfriedverheul

System:

Arch Linux

KDE Plasma 6

Wayland

iMac 2017

Lumux 0.6.0 (tested both Flatpak and latest GitHub source)

What works:

Philips Hue Bridge connects successfully

Entertainment zones are detected

Reading Mode works and changes Hue lights correctly

Screen selection dialog appears

Screen thumbnail is visible in the KDE sharing dialog

Sync starts successfully

FPS shows around 10

Problem:After selecting the screen, the Lumux preview remains completely black.Hue lights do not react to screen content.

Additional information:

xdg-desktop-portal is running

xdg-desktop-portal-kde is installed

PipeWire is running correctly

Same behavior with Flatpak version and GitHub source version

Expected behavior:The preview should show screen content and Hue lights should react to the displayed video.

Actual behavior:Preview remains black while FPS continues updating.

Additional test:

I reinstalled Lumux, rebooted the system and tested again.

Result:

Screen selection works
Sync starts
FPS stays around 10
Reading Mode works
Hue Entertainment connection works
Preview remains completely black
Lights do not react to screen content

So the problem is still present after a clean reinstall and reboot.

Activity

  1. stephensrmmartin commented on Jul 9, 2026

    @stephensrmmartin
    Contributor

    Likewise. But I see the following error:

    [2026-07-08 21:44:12] Connected to Hue bridge at 192.168.50.6
    Tray icon started using sni backend
    [2026-07-08 21:44:17] ModeManager: Switching to VIDEO mode
    [2026-07-08 21:44:17] Entertainment streaming activated for config a8bf79f7-c37f-45d7-a4e7-accd43f3a06d
    [2026-07-08 21:44:17] Entertainment config has 2 channel entries
    [2026-07-08 21:44:17]   Channel 0: pos=(-0.39, 0.21, 1.00), 1 members
    [2026-07-08 21:44:17]   Channel 1: pos=(-0.06, 0.22, 1.00), 1 members
    [2026-07-08 21:44:17] Parsed 2 channels from entertainment config
    [2026-07-08 21:44:17] Got hue-application-id: 4004de0d-a6f5-4b55-aacb-1481e7109590
    [2026-07-08 21:44:17] Entertainment streaming activated for config a8bf79f7-c37f-45d7-a4e7-accd43f3a06d
    [2026-07-08 21:44:17] Starting DTLS connection: openssl s_client -dtls1_2 -connect 192.168.50.6:2100
    [2026-07-08 21:44:18] DTLS connection established to 192.168.50.6:2100
    [2026-07-08 21:44:18] Entertainment stream connected with 2 channels
    [2026-07-08 21:44:18] Entertainment stream object exists, connected=True
    [2026-07-08 21:44:18] Zone-channel mapping: 6 zones mapped to 2 channels
    [2026-07-08 21:44:18] Using entertainment streaming with 6 zone-channel mappings
    [2026-07-08 21:44:18] ModeManager: Now in VIDEO mode
    Requesting screen capture permission via portal...
    Portal session started. PipeWire node: 90
    GStreamer capture pipeline started (converter: glupload)
    
    (python:2): GStreamer-Video-CRITICAL **: 21:44:24.577: gst_video_frame_map_id: assertion 'info->finfo->format == meta->format' failed
    GStreamer pipeline error: Failed to upload buffer
    GStreamer debug info: ../ext/gl/gstgluploadelement.c(318): gst_gl_upload_element_prepare_output_buffer (): /GstPipeline:pipeline0/GstGLUploadElement:gluploadelement0
    
    (python:2): GStreamer-CRITICAL **: 21:44:26.608: 
    Trying to dispose element pipewiresrc0, but it is in PLAYING instead of the NULL state.
    You need to explicitly set elements to the NULL state before
    dropping the final reference, to allow them to clean up.
    This problem may also be caused by a refcounting bug in the
    application or some element.
    
    
    (python:2): GStreamer-CRITICAL **: 21:44:26.608: 
    Trying to dispose element pipeline0, but it is in PAUSED instead of the NULL state.
    You need to explicitly set elements to the NULL state before
    dropping the final reference, to allow them to clean up.
    This problem may also be caused by a refcounting bug in the
    application or some element.
    
    GStreamer capture pipeline started (converter: glupload)
    
  2. godfriedverheul commented on Jul 9, 2026

    @godfriedverheul
    Author

    Thank you for looking into this.

    Your explanation matches what I see on my system.

    I'm running:

    • Arch Linux
    • KDE Plasma 6
    • Wayland
    • iMac 2017
    • Philips Hue Bridge

    Symptoms:

    • Screen selection works.
    • Hue bridge and Entertainment API connect successfully.
    • Reading Mode works.
    • Sync starts and FPS stays around 10.
    • The preview remains completely black.
    • Hue lights never react to screen content.

    I also tested:

    • Flatpak version
    • Latest GitHub source
    • Clean reinstall
    • Full reboot

    The behavior is identical in all cases.

    I'd be happy to test your proposed fix on my system if you'd like another tester.

  3. stephensrmmartin commented on Jul 9, 2026

    @stephensrmmartin
    Contributor

    Feel free to try the PR. It fixed my issues. I am also using:

    • Arch Linux
    • Kde Plasma 6
    • Wayland
    • Philips Hue Bridge

    I see the same symptoms. I also tried the latest github source and flatpak.

    The PR fixed the issues.

    git clone https://github.com/enginkirmaci/lumux.git
    cd lumux
    
    git fetch origin pull/18/head:pr-18
    git switch pr-18
    
    pipx install .
    
    lumux
    
  4. godfriedverheul commented on Jul 9, 2026

    @godfriedverheul
    Author

    I tested PR #18 using pipx install . as suggested.

    My system:

    Arch Linux
    KDE Plasma 6
    Wayland

    The behavior is different from the previous version, but the issue is not yet resolved.

    The preview window still remains completely black and the Hue lights do not react to the screen.

    I now also get repeated:

    GStreamer pipeline warning:
    Internal GStreamer error: code not implemented.

    followed by:

    GStreamer pipeline stopped
    Portal session closed

    and Lumux automatically switches back to Reading Mode.

    So PR #18 changes the behavior on my system, but the capture pipeline still fails. If you would like me to collect any additional logs or test another branch, I'm happy to help.

  5. stephensrmmartin commented on Jul 9, 2026

    @stephensrmmartin
    Contributor

    For sure. Paste your logs and I can see if I or "it" can make a fix. Reminder that the PR is human reviewed for my usecase, but fully AI written (Fable + Opencode). By if be happy to throw a new log at it to see if it'll find more fixes.

  6. godfriedverheul commented on Jul 9, 2026

    @godfriedverheul
    Author

    Thanks for offering to look at it!

    I tested PR #18 using the recommended installation method (pipx install .).

    System:

    Arch Linux
    KDE Plasma 6
    Wayland
    Philips Hue Bridge (Entertainment API)

    Commit tested:

    aa6f331

    The behavior has changed compared to the previous version, but unfortunately the issue is not resolved on my system.

    The Hue Bridge connects successfully.
    The Entertainment stream starts successfully.
    The screen capture permission dialog appears and I select my screen.
    The preview window remains completely black.
    The Hue lights do not react to the screen.
    After about 20–30 seconds, the pipeline stops and Lumux automatically switches back to Reading mode.

    The repeated GStreamer message is:

    Internal GStreamer error: code not implemented

    This message is repeated many times before:

    GStreamer pipeline stopped
    Portal session closed

    It looks like the failure now occurs in the GStreamer videoscale element rather than during the Hue Entertainment connection.

    For transparency: ChatGPT helped me analyze the logs and pr 7C73 epare this report, but all testing was performed on my own system.

    If you'd like, I can also upload the complete GST_DEBUG=4 log.

  7. stephensrmmartin commented on Jul 11, 2026

    @stephensrmmartin
    Contributor

    Could you send the full output log? I'm wondering whether there's just a missing plugin or something.

  8. godfriedverheul commented on Jul 11, 2026

    @godfriedverheul
    Author

    Sure! Thanks for taking a look.

    I've attached the full GST_DEBUG=4 output log.

    This was tested with:

    Arch Linux
    KDE Plasma 6
    Wayland
    PR #18 (aa6f331)
    Installed using pipx install .

    The Hue Bridge connects successfully and the Entertainment stream starts, but the preview remains black. After about 20–30 seconds the pipeline stops, Lumux falls back to Reading mode, and the log contains repeated:

    Internal GStreamer error: code not implemented

    For transparency: ChatGPT helped me analyze the logs and prepare this report, but all testing was performed on my own system.

    Let me know if you'd like me to test another branch or patch.

    lumux.log

  9. diastrogaming commented on Aug 31, 2026

    @diastrogaming

    Just wanted to +1 on this issue as for me the preview also stays completely black. I'm on Bazzite 44.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0