• v0.5.0 861da54066

    v0.5.0
    apple / swift (push) Successful in 1m6s
    apple / screenshots (push) Has been cancelled
    ci / rust (push) Has been cancelled
    ci / web (push) Has been cancelled
    ci / docs-site (push) Has been cancelled
    ci / bench (push) Has been cancelled
    android-screenshots / screenshots (push) Successful in 50s
    android / android (push) Successful in 3m25s
    decky / build-publish (push) Failing after 12s
    docker / build-push (--build-arg FEDORA_VERSION=44, ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm) (push) Successful in 5s
    deb / build-publish (push) Failing after 3m30s
    docker / build-push (., web/Dockerfile, punktfunk-web) (push) Successful in 33s
    docker / build-push (ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Successful in 4s
    docker / build-push (ci, ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Successful in 4s
    windows-host / package (push) Successful in 6m28s
    docker / build-push (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Successful in 52s
    windows-msix / package (arm64, C:\Users\Public\ffmpeg-arm64, aarch64-pc-windows-msvc, C:\t-a64) (push) Successful in 1m3s
    windows-msix / package (x64, C:\Users\Public\ffmpeg, x86_64-pc-windows-msvc, C:\t) (push) Successful in 1m5s
    linux-client-screenshots / screenshots (push) Successful in 2m9s
    release / apple (push) Successful in 9m25s
    flatpak / build-publish (push) Failing after 4m4s
    rpm / build-publish (bazzite, punktfunk-fedora-rpm) (push) Failing after 9m25s
    rpm / build-publish (fedora-44, punktfunk-fedora44-rpm) (push) Successful in 9m13s
    docker / deploy-docs (push) Successful in 20s
    web-screenshots / screenshots (push) Successful in 2m33s
    Stable

    enricobuehler released this 2026-07-02 18:22:00 +00:00 | 0 commits to main since this release

    ⚠️ Changed

    • The web management console moved from :3000 to :47992 (next to the mgmt API's :47990). Installers/packages register the new port and firewall rule; if you bookmarked http://<host>:3000, update it to :47992.

    Host performance — Linux

    • Zero-copy dmabuf capture is now the default on VAAPI (AMD/Intel) hosts — ~10× less host CPU per frame, with a one-shot automatic downgrade when a compositor can't negotiate the dmabuf offer.
    • VAAPI low-power (VDEnc) entrypoint fallback — modern Intel (Gen12+/Arc) hosts encode now; PUNKTFUNK_VAAPI_LOW_POWER pins the mode.
    • GPU RGB→NV12 convert is the default on the NVIDIA tiled zero-copy path (NVENC ingests native YUV — no SM-side color convert competing with the game).
    • GPU clock hygiene (PUNKTFUNK_PIN_CLOCKS): amdgpu performance-level pin + NVML core-clock floor with restore-on-exit — measured −38…45% host latency on AMD (p50 8.8 → 5.5 ms at 1440p60); the NVIDIA CUDA/NVENC P2 memory-clock cap is lifted via an auto-installed CudaNoStablePerfLimit driver profile (no root needed).
    • Intra-refresh loss recovery (PUNKTFUNK_INTRA_REFRESH, opt-in): 10× fewer IDR spikes under sustained loss; client keyframe requests are rate-limited while the refresh wave heals.
    • Delivery-anchored wire timestamps + a new queue stage in perf/stats — latency figures now cover the full capture→glass window.
    • GameStream session threads get the native path's scheduling boost.

    Host performance — Windows

    • Two-thread async NVENC retrieve (PUNKTFUNK_NVENC_ASYNC, opt-in): submit and lock_bitstream split across threads per the NVENC programming guide — recovers the depth-1 throughput collapse under GPU-saturating games.
    • Layout-correct keyboard injection (semantic vs positional VKs); gamepad driver attach/heartbeat health in logs; installer overhaul (branding, VB-CABLE, GameStream choice, driver uninstall).

    Multi-GPU & web console

    • GPU inventory + selection: pick the encode GPU in the web console (persisted by stable PCI identity); capture, encode, and render-node selection follow it.
    • Host log ring + GET /api/v1/logs + a console Logs page.

    Clients

    • Codec preference negotiation across the protocol and all clients.
    • Windows: all-vendor video pipeline rewrite, GPU picker, richer stream HUD, WinUI UX batch, speed test + capture UX parity.
    • Apple: gamepad UI v2 — controller settings, add-host flow, aurora backdrop, macOS support.
    • Linux: game library browser. Android: connected-controllers debug view, AAudio crackle fix, layout-correct keymaps.

    Testing & diagnostics

    Native-path PUNKTFUNK_VIDEO_DROP wire-loss injection, probe keyframe-on-drop (real-client recovery behavior), VAAPI submit-split instrumentation.

    Downloads