The VRChat Documentation Hub

Welcome to the VRChat Documentation hub. You'll find comprehensive guides and documentation to help you start working with VRChat as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    

Video Players

Using the Prefabs

The easiest way to put a Video Player in your Udon world is by using one of the Prefabs, which you can find in Assets/VRChat Examples/Prefabs/VideoPlayers.

The two Video Player prefabs, ready to drop into your world.

Both of these prefabs will play a video of your choosing, synchronized for everyone in your world. They won't loop - the graph turns off looping for now to get sync to work. If you want them to loop, turn on 'Loop' and remove the UdonBehaviour.

📘

These are Synced Player EXAMPLES

You don't have to use the "UdonSyncPlayer" Udon Behaviours. You can use just the VRC Video Player component if you don't need the videos synced in your world. You can also make your own Sync Graphs using the provided one as a starting point or you can make one from scratch.

Choosing AVPro or Unity Video Player

Why would you choose one or the other?
AVPro supports live streams on multiple platforms, like YouTube Live, Twitch, and some others! You'll need to make a graph that calls PlayURL on the Video Player to make this work. The Unity Video player does not support these live streams.

In addition, AVPro does not play in the editor - you'll need to Build & Test your world to see it working. Unity Video works in Play Mode in the Editor when using links that point directly to supported video file types like 'mp4' and 'webm'. Hosted services like YouTube and Vimeo will only work in the client.

Rate Limiting

A given user is only permitted to handle a new video player URL once every five seconds. This is a global limit across all video players. This applies to the default URLs as well as those set with LoadURL and PlayURL.

With a single video player, this isn't an issue-- but if you have multiple video players, you need to ensure that a request isn't sent too quickly after a previous request.

This also applies to late-joiners. If you have 2 video players running in your world, a late-joiner will see that they must send out two video requests. Unmanaged, they will attempt to do so simultaneously, and will fail. In cases where you have more than one video player playing simultaneously in a world, you'll have to account for this.

Supported Video Hosts

To play a video, you need to provide a URL in the Video URL field when you set up your Video Player in the editor, or you can paste a URL into the VRCUrlInputField provided in the prefabs.

A full list of our supported hosts is available at Video Player Whitelist. Some recommendations are below.

📘

Disclaimer

The listings below do not constitute partnerships or endorsements. These are services that are widely accessible and have been tested to work properly with VRChat video players.

Your Own Host

Cost: Paid - varies depending on your Provider
Links: Link directly to the .mp4 or .webm file
Limitations: If you have your own host outside of our whitelist, users must have the "Allow Untrusted URLs" option enabled in their Settings to see your content.

You may want to consider looking into a "content delivery network" (CDN) to host your content. This is useful if you plan on your video being accessible for many users, or to be fast for many users across the world. CDNs will distribute your file across many servers worldwide to ensure that there is a source close to the viewer to ensure fast downloads.

We have tested Amazon Cloudfront and BunnyCDN with no issues, and they are both listed on our whitelist. CDN services are usually paid services, but tend to be low-cost for bulk storage/transmission of data.

YouTube

Cost: Free
Links: Use the 'watch' url
Limitations: Will not work on Quest or Linux

Vimeo Basic

Cost: Free
Links: Use the basic video url
Limitations: Will not work on Quest or Linux

Vimeo Pro or Business

Cost: Paid
Links: Use the direct video links
Limitations: None

Updated about a month ago


Video Players


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.