https://bugs.kde.org/show_bug.cgi?id=526931

David Edmundson <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/plas
                   |                            |ma/kpipewire/-/commit/a85ca
                   |                            |b14f5dcddcc5feb322c3aaa0f87
                   |                            |7458c9c7
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #6 from David Edmundson <[email protected]> ---
Git commit a85cab14f5dcddcc5feb322c3aaa0f877458c9c7 by David Edmundson.
Committed on 21/10/2026 at 16:20.
Pushed by davidedmundson into branch 'Plasma/6.8'.

libx264encoder: Tell libx264 the stream's frame rate

The codec context only gets a 1/1000 time base. Without a frame rate,
libx264 derives 1000 fps from it and signals H.264 level 6.1 for a
1080p stream. Decoders that enforce the level, such as OpenH264, reject
the stream, so KRdp clients that decode with it (FreeRDP builds on
macOS such as Remmina and Royal TSX, KRDC on Fedora) show a black or
white screen whenever KPipeWire uses libx264, i.e. when no VA-API
encoder is available.

Pass the producer's maximum frame rate, so libx264 computes the level
from the real rate (4.2 for 1080p60).

Tested with KRdp 6.8.0 on a Raspberry Pi 5 (no VA-API): Royal TSX and
Remmina on macOS showed a white screen before and show the desktop
after; FreeRDP with an FFmpeg decoder works either way; CPU use of
krdpserver is unchanged.
Related: bug 500276


(cherry picked from commit 5f098057db8ada04cc16022e2f7b9c5622014856)

Co-authored-by: Matteo Beretta <[email protected]>

M  +6    -0    src/libx264encoder.cpp

https://invent.kde.org/plasma/kpipewire/-/commit/a85cab14f5dcddcc5feb322c3aaa0f877458c9c7

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to