24x7 RTMP desktop stream, client side + UAT PASS (#798)

Whole-screen KDE capture -> x264 -> RTMP, fenced to the rt slice.
Loopback mediamtx receiver; Cloudron cutover = one creds edit.
Detail: https://projects.knownelement.com/issues/798#note-4519

💘 Generated with Crush

Assisted-by: Crush:glm-5.2
This commit is contained in:
2026-09-05 05:01:23 -05:00
parent f4e36ec647
commit 777767db54
15 changed files with 503 additions and 5 deletions
+14
View File
@@ -1,5 +1,19 @@
# NEXT — perf-opt closeout COMPLETE (2026-08-31); #610 open-terminal fleet DONE
## 2026-09-05 morning — 24x7 RTMP desktop stream, client side DONE (#798)
- Built + UAT PASS against the LIVE desktop (logs/19-rtmp-uat.out):
h264+aac 1920w ~30fps, 187% of the 2-core ukrrs-rt.slice fence,
self-heal (kill ffmpeg -> respawn -> stream back) proven. Frames
captured + luma-verified. Loopback receiver ukrrs-ultix-rtmp-rx UP
(mediamtx 1.20.1, 127.0.0.1:1935 only).
- HUMAN OWES (one command, installs the systemd service + creds file):
`cd ~/projects/ultix && ./18-rtmp-stream.sh`
then watch locally: `ffplay rtmp://127.0.0.1:1935/live/desktop`
- Cloudron cutover when ready: paste ingest URL+key into
~/.creds/rtmp-stream.env, `systemctl restart ukrrs-rtmp-stream`.
- Limits + tuning record: STREAMING.md (2560w veryfast does NOT fit the
2-core fence until #601; x11grab GetImage caps ~20 delivered fps).
## 2026-09-05 early AM — post-update-reboot RDP outage FIXED (#611)
- Two reboot-triggered killers: waitforx RandR race/empty-argv (shim at
/usr/lib/x86_64-linux-gnu/xrdp/waitforx, pristine = waitforx.real) and