Source: Steam Community (opens in a new tab)
vrOS v0.4.0 Patch Notes
New Features
- Added the new A11y pipeline that unifies speech-to-text, translation, OCR, object recognition, and Capture & Recognize across desktop and VR, with better capture-target heuristics for VR View, VRChat, and OBS.
- Added a full OBS captions workflow with a dedicated Captions subtab, one-click browser-source setup, open and closed caption delivery, rolling multiline transcript history, fade timing, and caption styling controls.
- Added local AI runtime support for on-device translation with OPUS-MT, runtime and compute-device plumbing in the UI, and parity work so local AI features behave more consistently across desktop and VR surfaces.
- Added a native faster-whisper runtime with runtime status reporting, UI integration, and the Rust-side plumbing needed to surface local speech-recognition availability more clearly.
- Added secure credential storage for machine-local account details, moving OBS host and port, Twitch identity details, and VRChat username into OS-backed secure storage with an encrypted fallback and backend visibility in settings.
- Added a richer keyboard theme system with hover-color customization, per-key keycap and legend overrides, and unified theme behavior between the keyboard editor and the VR keyboard overlay.
Bug Fixes
- Fixed live Twitch ad warning persistence so ad-related changes no longer desync TOML and SQLite, and restored desktop-to-VR ad overlay editing, Done Editing, and opacity updates from the Ads tab.
- Fixed desktop shutdown sequencing so the A11y runtime, perf telemetry, and related desktop-owned tasks tear down gracefully instead of hanging or racing on exit.
- Fixed broader desktop and VR teardown behavior to reduce stuck resources, late shutdown races, and recovery instability across UI, AI, keyboard guard, and mouse-monitor paths.
- Fixed playspace manipulation regressions by restoring the known-good per-hand drag, rotate, and gravity behavior and cleaning unfinished OVR settings without breaking the in-flight vestibular migration.
- Fixed custom cursor reticle drift on head-locked and wrist-attached overlays by anchoring the reticle to the same tracked-device late-latching path as the target overlay.
- Fixed shared-texture recovery churn so SteamVR keeps showing the last good frame during reconnect or device-loss windows instead of thrashing on invalid or zero-handle snapshots.
Improvements
- Improved the A11y speech and translation pipeline with lower-latency Whisper streaming, strongest-channel downmixing, stale-duplicate suppression, better language reuse, music and singing markers, and a free shared translation fallback.
- Improved GPU incident recovery and postmortem logging with device-loss diagnostics, video-memory budget snapshots, bridge ownership metadata, submit counters, and recovery backoff for UI, capture, popup, video, and ad overlays.
- Improved the FPS tab with adapter-level VRAM telemetry, realistic dedicated and shared memory reporting, better canvas redraw behavior after hidden mounts, and cleaner chart layout and label formatting in both desktop and VR surfaces.
- Improved VR keyboard responsiveness and hover stability so key targeting feels snappier and more reliable in-headset.
- Retuned VR joystick scrolling to replace the old light and full-speed step with a smoother SteamVR-like ramp and lower full-speed behavior across the dashboard, popped-out tabs, and capture overlays.
Other Changes
- Updated Steam staging and upload scripts for launcher-based builds and isolated release artifacts so Steam packaging is less likely to pick up cross-target leftovers.
- Isolated debug builds from the shared Cargo target and added Windows and CUDA build helpers plus vendor patches to stabilize local AI development builds.