OSC: Difference between revisions

From VRChat Wiki
RΩKΔ (talk | contribs)
No edit summary
RΩKΔ (talk | contribs)
No edit summary
Line 13: Line 13:


== OSC feature set ==
== OSC feature set ==
OSC can control a multitude of things within VRChat. While primarily focused around avatars OSC has the ability to modify/control some features such as control of the [[Camera Dolly]] check out the implementation on the [[Camera Dolly#OSC integration|Dolly's OSC Integration]] page.
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.


Parameters such as "input/Voice" can be controlled by sending "True" switches the current state of your microphone (Muted to Unmuted), Sending "False" has no action.
=== 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 input can be accessed under "/chatbox/input".
=== 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

V · EThis is an official VRChat information page!
It is reviewed and approved by the VRCWiki Team. Learn how to contribute to this page by reading the Contribution Guide.
V · EThis page is a stub.
You can help the VRChat Wiki by improving it.
[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:

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

References