SlimeVR / SlimeVR-Server

Server app for SlimeVR ecosystem
https://slimevr.dev
Apache License 2.0
680 stars 177 forks source link

SolarXR IPC Socket #1247

Open rcelyte opened 5 days ago

rcelyte commented 5 days ago

This patch introduces an IPC interface for communicating with the server via SolarXR ー exposing bone data not available through the existing Protobuf API while remaining more reliable and performant compared to the WebSocket API. Monado will require this interface to implement XR_FB_body_tracking while maintaining latency parity with the OpenVR driver (see https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2253).

It also fixes a one line bug in the WebSocket API where messages got clobbered on send, resulting in all but the first SolarXR connection receiving mangled data.

rcelyte commented 5 days ago

Marked as draft since I'm not sure I have try blocks in all the right places