4 stable releases
new 1.1.3 | Jun 15, 2025 |
---|---|
1.1.1 | May 25, 2025 |
1.0.0 |
|
#501 in Asynchronous
411 downloads per month
98KB
1.5K
SLoC
VRChat OSC/OSCQuery for Rust
vrchat_osc
is a Rust crate designed to easily utilize VRChat's OSC (Open Sound Control) and OSCQuery protocols.
This crate aims to help VRChat tool developers efficiently perform operations such as manipulating avatar parameters, retrieving information, and providing custom OSC services. It integrates OSC message sending/receiving with service discovery via mDNS for OSCQuery.
Key Features
- OSC Communication: Easily send and receive OSC messages with the VRChat client.
- OSCQuery Service Discovery:
- Automatically discovers VRChat clients and other OSCQuery-compatible services on the local network using mDNS.
- OSC Service Registration: Publish your own OSC services and respond to queries from VRChat or other tools.
- OSCQuery Get Parameter: Retrieve specific parameters from VRChat clients using OSCQuery.
- Asynchronous Support: Achieves efficient I/O operations based on the Tokio runtime for asynchronous processing.
Setup
To use this crate, add the following dependencies to your Cargo.toml
:
[dependencies]
vrchat_osc = "1.1"
tokio = { version = "1", features = ["full"] }
rosc = "0.10" # For constructing OSC messages
Usage Example
A basic usage example of this crate can be found in examples/full.rs.
License
This project is licensed under the terms of either the MIT license or the Apache License 2.0.
Contribution
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch for your changes.
- Submit a pull request with a clear description of your modifications.
By contributing, you agree that your code will be licensed under the MIT license OR Apache License 2.0.
Acknowledgements
The data models defined in vrchat_osc::models::*
are implemented with reference to tychedelia/osc-query.
Dependencies
~15–26MB
~372K SLoC