Repository navigation
feat(foveation): support external combined gaze over OSC - #3402
Conversation
| pub enum FaceTrackingSocialPresenceSinkConfig { | ||
| #[schema(strings(display_name = "Disabled"))] | ||
| None, |
There was a problem hiding this comment.
This None variant is not needed anymore
There was a problem hiding this comment.
But if we delete this now, we won’t be able to enable eye-tracking foveated rendering while disabling social eyes forwarding
There was a problem hiding this comment.
Ah true. But let's have social_presence: Option<FaceTrackingSocialPresenceSinkConfig> and remove the None variant.
|
I realized that it should have been Switch instead of Option... I didn't want to make you correct again, I'll fix it post-merge |
that's true, I forgot it too... anyways thanks to your detailed review for these prs, that really do helped me a lot cause it's actually my first time contribute to a open source project! have a good night. |
Summary
this pr follows #3384 #3385 #3388 #3394
Add external combined-gaze input over OSC/UDP, reusing the existing eye-tracked foveation pipeline.
Add an
External OSCinput source with a configurable localhost UDP port (default: 9945).Accept head-local XYZW quaternions at
/alvr/eye/combined/v1, alongside sequence, validity and sample-age fields.Validate incoming observations and bound receive processing to avoid blocking head/controller tracking.
Preserve the existing gaze filtering, per-eye projection, encoder alignment and per-frame center metadata. Missing input follows the existing hold and static fallback behavior.
This PR respects our AI policy: I completely understand and "own" the coding decisions made, and can discuss them without relying on AI copy-pasted responses.
This PR's description contains a human-written summary of the content of the code.
Testing: