BetterFrame/kiosk
Mitchell R 00b304c39f feat: stream warmth — keep cameras warm across layout swaps
Previously every reload-bundle killed and restarted all pipelines.
Now:
- WARM_CAMERAS map: camera_id → (pipeline, paintable)
- On reload: stop only pipelines for cameras no longer needed
- Needed = cells with content_type=camera + layout.preload_camera_ids
- Reuse existing pipeline+paintable, attach to new Picture widget
- Preloaded cameras keep decoding even when not visible

Achieves the "zero perceived latency" layout swap goal from CLAUDE.md
when cameras overlap between layouts.
2026-05-10 22:51:28 +02:00
..
src feat: stream warmth — keep cameras warm across layout swaps 2026-05-10 22:51:28 +02:00
Cargo.lock refactor: Nx-Witness layout builder + drop regions/is_default 2026-05-10 21:55:19 +02:00
Cargo.toml feat: WebKit for web/html cells + display auto-discovery via heartbeat 2026-05-10 22:39:53 +02:00
prototype.sh fix: force sw decode for H265 — Pi5 hw decoder rejects 960x1080 2026-05-10 04:11:43 +02:00