Guides

OSC Resources

Tools and Projects for OSC Development and Use

WARNING: USE THESE AT YOUR OWN RISK!

It is INHERENTLY DANGEROUS to run code that someone else has written. Most of the projects below are open-source so you can verify that they are safe to use. If possible, read through the code and compile it yourself instead of using compiled binaries (exe files, etc).

Submissions

If you would like submit your own project for consideration, please post it to Show and Tell. To be considered, your project should be documented, open-source, include a license, and the project page must not violate or suggest violations of VRChat's TOS, or link to any pages that do. We will update this list weekly, adding and removing projects.


The List

Controllers

Face Tracking

  • OpenSeeFace: Robust realtime face and facial landmark tracking on CPU with Unity integration (Python)
  • VSeeFace: Standalone program with Face and Hand tracking, adding some direct VRChat OSC controls. (App)
  • VRChat-MotionOSC: Webcam to Avatar Parameters (NodeJS)
  • VRCFaceTracking: HTC Vive Pro Eye and Lip Tracking (C#)

Hand Tracking

Haptics

Heart Rate

  • HRPresence: Windows GATT heartrate monitor tool that pushes BPM to OpenSoundControl (OSC) for VRChat and DiscordRPC. (C#)
  • MagicChatbox: Display your heart rate in real-time using Pulsoid-supported devices. Enhanced options like "Smooth Heart Rate" and a "Heart Rate Trend Indicator" are available. (C#)
  • OyasumiVR: Supports heart rate monitoring via Pulsoid, enabling you to use your heart rate data to start sleep mode. (Typescript, C#)
  • Pulsoid: Enables sending heart rate data to VRChat worlds through MIDI.
  • miband-heartrate-osc: Enable and monitor heart rate with Mi Band device on Windows 10. (C#)
  • pulsoid-to-vrchat-osc: Send Heart Rate to VRChat over OSC via Pulsoid (NodeJS)
  • hr-osc: Send Heart Rate from Stromno to Avatar (Go)
  • vrc-osc-miband-hrm: Sends data from Mi Band / Amazfit HR Monitor to Avatar (NodeJS)
  • BluetoothHeartRateOSC: Bluetooth Heart Rate reading program that writes to VRChat OSC (C#)

IRL Control

Library

  • OscCore: A performance-oriented OSC library for Unity, what we use within VRChat (C#)
  • VRCOSCGUI: This is a OSCSender for VRChat based on Plugins. By using interface can add more plugins and send OSC by the holder application. Each plugin don't need to manage OSC by itself. (C#,C++)
  • OSCLib-for-ESP8266: Send messages from microcontrollers (Arduino)
  • phorcys: Open Sound Control (OSC) implementation and VRChat OSC API tools written in Rust! (Rust)
  • VRC_OSCLib: OSC & VRChat-specific helpers in Rust. Midi > OSC (Rust)

Misc

  • vrc-worldobject: Create world space props that are network-synced for late joiners. (TouchOSC,C#)
  • OSCKeyboard: Send Windows keyboard input to Avatar keyboard (Python)

Text

  • TTS-Voice-Wizard: Speech to Text to Speech app using Microsoft Azure. Sends text as OSC messages to VRChat to display on avatar. (STTTS) (Speech to TTS) (VRC STT System) (C#)

Twitch

  • Spooder: Make your stream an open canvas with OSC driven events and browser plugins (NodeJS)
  • EZTwitchOSCBot: Simple & customizable Twitch bot with a GUI interface that takes chat commands and sends them to VRChat through OSC (NodeJS)
  • TwitchVrcAvatarOSC: Twitch bot to manipulate avatar (C#)

Utilities

  • vrc-osc-scripts: Various OSC helper scripts that I made for VRChat (Python)
  • VRCOSC: Modular OSC application creator made for VRChat (C#)
  • Protokol: App to monitor and log OSC (App)
  • TouchOSC: Scriptable OSC Interface Application (App)
  • AV3Emulator: Avatar Emulator with OSC Support (C#)