• v0.8.0 ad2c4ed7d3

    gabrielgad released this 2026-07-02 20:56:30 -04:00 | 219 commits to main since this release

    Streaming quality

    • Sender pacing (deploy/paceshim): LD_PRELOAD SO_MAX_PACING_RATE shim + fq qdisc notes. Keyframe bursts that left the box at 200+Mbps instantaneous now pace at a configurable rate (default 20MB/s). Includes the fq flow_limit tail-drop gotcha writeup.
    • Real hardware VBR: rate-control engaged live post-PLAYING (GSE_HW_VBR_MBPS) — the inline pipeline-string property never actually engaged and every session silently ran CQP.
    • Truthful SDP profile-level-id injection — fixes remote clients falling into 15x-slow software decode.
    • Default jitter buffer 150ms → 30ms (ui37) — validated on real WAN viewers with pacing active: jbuf pinned 18-30ms, jitter 4-13ms.
    • tiled-modifier dmabuf negotiation in gst-dmabuf-vulkan (with RADV tiled-import workaround).

    Infra

    • gadgetd: single-owner daemon for raw-gadget Xbox-pad lifecycle; seat-streamer is now a socket client (fixes UDC races + udev uaccess race).
    • announce: Matrix seat-open notifier sidecar.
    • Element lobby widget + one-click ?seat= join.
    • admin: forward graphical env to spawned launches (fixes wedged deploys).

    Docs & tooling

    • docs/adaptive-streaming.md: AIMD adaptive fps/bitrate controller design (floor 60 / ceiling 200, delta-proportional cadence, decode-vs-link distress classifiers, panic→recovery) — next major work.
    • scripts: pcap burst analyzer, CDP video-diff harness, pad e2e/race probes, bench updates.
    Downloads