Skip to content
Guribo edited this page Jul 11, 2026 · 9 revisions

UdonVoiceUtils

TLP UdonVoiceUtils is a collection of scripts and prefabs for VRChat worlds that modify player audio in real time.

Features

  • Voice range control — extend or limit how far players can be heard
  • Audio zones — separate players into private rooms with distinct voice areas
  • Occlusion — muffle voices behind walls (environment) or other players
  • Voice directionality — reduce volume when players face away from each other
  • Reverb — apply reverb to player voices and avatar audio
  • Private channels — create unlimited private voice channels
  • Microphone pickups — extend voice range with pickupable microphones
  • Height scaling — adjust voice range based on avatar height
  • World audio management — importance-based emitter culling, reverb, and privacy for scene audio sources

Getting Started

  1. Install via VPM (VRChat Creator Companion or ALCOM)
  2. Add TLP_Essentials from Packages/tlp.udonutils/Runtime/Prefabs/TLP_Essentials.prefab
  3. Add TLP_PlayerAudioController from Packages/tlp.udonvoiceutils/Runtime/Prefabs/Core/TLP_PlayerAudioController.prefab
  4. Test with Build and Test (2 instances required for voice testing)

See Getting Started for walkthrough, or Installation for detailed setup steps.

Documentation

Topic Link
Installation & Setup Installation
Minimal Scene Setup Minimal Scene Setup
Architecture Overview Architecture
Occlusion Occlusion
Height Scaling Height Scaling
Voice Directionality Voice Directionality
Private Voice Channels Private Voice Channels
World Audio Subsystem WorldAudio-Subsystem
WorldAudio Limitations WorldAudio-Limitations
Audio Processing Pipeline Audio-Processing-Pipeline
Troubleshooting Troubleshooting Guide
FAQ FAQ

Archived

Topic Link
Reverb in VRChat Reverb in VRChat (historical data)
Performance Performance (historical benchmarks)

How-to Guides

Task Link
Set Up Occlusion How to Set Up Occlusion
Set Up Voice Channels How to Set Up Voice Channels
Set Up Reverb How to Set Up Reverb
Set Up Height Scaling How to Set Up Height Scaling
Set Up Voice Directionality How to Set Up Voice Directionality
Set Up Microphone How to Set Up Microphone
Set Up WorldAudio Emitters How to Set Up WorldAudio Emitters
Enable Debug Mode How to Enable Debug Mode

Component Reference

Component Purpose
PlayerAudioController Core controller — manages all player audio
PlayerAudioOverride Per-zone override settings
PlayerAudioOverrideList Sorted list of overrides per player
PlayerAudioView UI view for audio settings
WorldAudioController Emitter update controller (importance-based)
OccludedEmitter Per-emitter lifecycle management
AudioSourceStateController Play/pause/cull state machine
AudioObstacle Per-obstacle occlusion config
Privacy Channel Reference Channel ID behavior and limits

Example Scripts

Script Purpose
AdjustableGain Synced UI slider for voice gain
DynamicPrivacy Dynamic privacy channel management

Example Prefabs

All prefabs are located at Packages/tlp.udonvoiceutils/Runtime/Prefabs/Examples/. See Example Prefabs for full listing with components and configuration.

Links

Clone this wiki locally