Release v2.0.4: Sub-frame Input Precision, Wayland Stability, and WebRTC Quality Control
This release focuses heavily on competitive-grade input latency and bulletproofing the Linux host experience. By decoupling the input polling architecture and tapping directly into native Chromium APIs, Version 2.0.4 completely eliminates stream-ending deadlocks and guarantees zero-latency inputs for competitive fighting games.
Dedicated Input Fast-Lane (250Hz)
The entire controller and KBM polling pipeline has been rewritten to bypass the main WebSocket signaling channel, completely eliminating TCP Head-of-Line blocking during network congestion.
- Sub-frame Precision: Inputs are now routed through a dedicated
/ws/inputfast-lane, allowing the polling rate to safely return to a blistering 250Hz (4ms). Games that require frame-perfect inputs (like JoJo's Bizarre Adventure: All-Star Battle R) will now feel identical to local couch co-op. - Decoupled State: Video frame drops or signaling hiccups will no longer cause delayed bursts of input commands.
Native Wayland & PipeWire Stability
The Linux screen capture pipeline has been fundamentally restructured to route around a highly destructive C++ thread deadlock buried inside Electron's IPC bridge.
- Native OS Portal Invocation: By forcing the engine to use
getUserMediainstead ofdesktopCapturer, Nearsec now natively hooks into Chromium's pristine PipeWire implementation. - Deadlock Eradication: Canceling the native OS screen picker no longer permanently freezes the host UI or crashes the underlying WebRTC engine.
WebRTC Quality & Congestion Control
The dynamic congestion monitor has been recalibrated to correctly respect user preferences regarding stream degradation.
- True "Crisp" Mode: When prioritizing quality over latency, the network monitor will now enforce a strict 2.5 Mbps minimum floor. Instead of aggressively slashing the bitrate into a blurry mosaic during network lag, WebRTC will now correctly drop framerates to maintain a razor-sharp image.
Under the Hood
- Host UI State Sync: Fixed a WebSocket bug where viewers' active controller slots would turn into "ghosts" if the host performed a Ctrl+R page refresh.
- Windows Audio Failsafe: Rewrote the Windows fallback capturer to safely stitch Desktop Audio and Window Video together manually, preventing Chromium
OverconstrainedErrorcrashes when capturing specific applications.
Full Changelog: v2.0.3...v2.0.4