Skip to content

Phosphor 4.0.0~wave2.6 — the Rust rewrite (pre-release)

Pre-release
Pre-release

Choose a tag to compare

@RamenFast RamenFast released this 05 Jul 01:51
· 98 commits to master since this release

Phosphor 4.0.0~wave2.6 — the Rust rewrite, pre-release

This is not a plain version bump over 3.5.0: it replaces the Python/GTK
app with the full-Rust rewrite (egui + wgpu + native PipeWire, one engine),
and some v3.5 functionality did not ride along yet. Read the ledger
below before upgrading.

What this build is

One compiled binary. All 11 scope views (golden-gated against v3's engine,
byte-exact), the kit chain, signal postcards (.phos), the player with
true gapless (v3 had none), cover art, native per-app capture and vacuum
mode, MPRIS both directions, mini/glass/fullscreen, 3D orbit, kit editor,
postcard export, compose mode (draw on the scope, hear it — new in wave
2.6), auto-gain, six original themes, and a phosphor(1) manpage.
Uncapped it runs ~21× v3's frame ceiling; phosphor bench is the
regression gate and passes on every workload.

Not yet in v4 — the honest ledger (each tracked as an issue)

  • phosphor-studio scene compiler is gone from the package (was the
    headline of v3.5). It returns in Rust in wave 4. — #1
  • Render-ahead precompute is not ported — deliberate; the engine
    reconstructs in realtime on the GPU path. Decision + revisit criteria
    in PARITY.md. — #2
  • The Cinnamon applet keeps working only because it bundles its own
    v3-era engine; the supported rewrite lands in wave 3. — #3
  • Agent CLI (probe/tap/ctl/feed/kit validate|inspect) are
    loud exit-2 stubs until wave 3. — #4
  • Multi-app mixing is engine-only, no UI yet. — #6
  • MANUAL.md still documents v3 until the wave-3 docs pass; the
    manpage covers the real v4 surface meanwhile. — #7

Upgrade notes

  • Settings migrate in place (~/.config/phosphor/settings.json); unknown
    keys are preserved on write-back.
  • If your v3 profile has renderer = cairo (a common choice from the
    era when v3's GPU path looked washed out): switch Settings → Renderer
    to GPU. The wash was a fixed sRGB double-encode; the GPU renderer is
    now the sharper one and runs ~8× faster (measured 52–65 fps cairo vs a
    locked 480 on the same profile and song).
  • Starter kits move to /usr/share/phosphor/kits; user kits in
    ~/.local/share/phosphor/kits shadow them.

Depends: libpipewire-0.3-0 (>= 0.3.65). Recommends: ffmpeg (clip/
postcard mux), libvulkan1.

🤖 Generated with Claude Code