OSC: Difference between revisions
No edit summary |
No edit summary |
||
| Line 13: | Line 13: | ||
== OSC feature set == | == OSC feature set == | ||
OSC | OSC enables control and monitoring of multiple systems within VRChat, including input controls, avatar parameters, chatbox functionality, and camera systems such as the [[Camera Dolly]]. For camera implementation details, see the [[Camera Dolly#OSC integration|OSC integration]] section. | ||
=== Input controls === | |||
OSC can trigger VRChat input actions by sending messages to <code>/input/*</code> addresses. This includes movement controls, view rotation, jumping, voice toggling, and VR-specific interactions. For a complete list of supported inputs, see the [https://docs.vrchat.com/docs/osc-as-input-controller official OSC input controller documentation]. | |||
Chatbox | === Chatbox === | ||
The chatbox can be controlled through OSC using <code>/chatbox/input</code> to send text messages (up to 144 characters) and <code>/chatbox/typing</code> to control the typing indicator. | |||
=== Avatar parameters === | |||
OSC provides read and write access to avatar parameters, enabling real-time control of avatar expressions, animations, and custom behaviors. Parameters are accessed through <code>/avatar/parameters/<ParameterName></code> addresses and support integer, float, and boolean data types. Parameter names and behaviors are defined by individual avatar creators. | |||
== OSC ports == | == OSC ports == | ||
Revision as of 18:41, 23 October 2025
[Reason: Not much information here! You can contribute by expanding, and proofreading this article, in accordance with the Manual of Style.]

OSC is a way to get different devices and applications to talk to each other. VRChat announced on February 16th 2022 OSC for avatars[1]. Most commonly used to have body-, eye- and face trackers communicate with VRChat.
OSCQuery
OSCQuery is a protocol to connect OSC applications together easier. Information on how to connect with VRChat with OSCQuery is available on the VRChat OSCQuery GitHub Wiki. VRChat also provides a C# library on GitHub.
Some of the community made OSCQuery libraries:
- TypeScript with example scripts on GitHub by Jangxx - node-oscquery.
- Python with examples on the GitHub readme.md - vrchat_oscquery. An older variant that's more descriptive - tinyoscquery.
- Rust implementation with baseline functionality - oscquery.
OSC feature set
OSC enables control and monitoring of multiple systems within VRChat, including input controls, avatar parameters, chatbox functionality, and camera systems such as the Camera Dolly. For camera implementation details, see the OSC integration section.
Input controls
OSC can trigger VRChat input actions by sending messages to /input/* addresses. This includes movement controls, view rotation, jumping, voice toggling, and VR-specific interactions. For a complete list of supported inputs, see the official OSC input controller documentation.
Chatbox
The chatbox can be controlled through OSC using /chatbox/input to send text messages (up to 144 characters) and /chatbox/typing to control the typing indicator.
Avatar parameters
OSC provides read and write access to avatar parameters, enabling real-time control of avatar expressions, animations, and custom behaviors. Parameters are accessed through /avatar/parameters/<ParameterName> addresses and support integer, float, and boolean data types. Parameter names and behaviors are defined by individual avatar creators.
OSC ports
VRChat uses two UDP ports for OSC communication on localhost (127.0.0.1):
| Port | Direction | Purpose |
|---|---|---|
| 9000 | Send → VRChat | Your application sends messages to VRChat |
| 9001 | Receive ← VRChat | Your application receives messages from VRChat |
Resources
- OSC Overview on the VRChat Documentation
- Full OSCQuery proposal and how it functions while including example code