Skip to main content

视频播放器

您可以使用 SDK 的 VRCAVProVideoPlayer 或 VRCUnityVideoPlayer 向 VRChat 世界添加视频播放器。

热门社区预制体

你在寻找社区创建的视频播放器预制体吗?试试 VideoTXL、ProTV 或 USharpVideo。

使用预制体​

向 Udon 世界添加视频播放器的最简单方法是使用预制体,你可以在 Packages/VRChat SDK - Worlds/Samples/UdonExampleScene/Prefabs/VideoPlayers 中找到它们。

两个视频播放器预制体,可随时拖入你的世界。

这两个预制体都会播放你选择的视频,对你世界中的所有人同步。它们不会循环——图表暂时关闭了循环以使同步工作。如果你希望它们循环,请打开"Loop"并移除 UdonBehaviour。

这些是同步播放器示例

你不必使用"UdonSyncPlayer"Udon Behaviour。如果你不需要视频在世界中同步,可以仅使用 VRC 视频播放器组件。你也可以使用提供的同步图作为起点制作自己的同步图,或从头开始制作。

选择 AVPro 还是 Unity 视频播放器​

为什么你会选择其中一个? AVPro 支持多个平台上的直播流,如 YouTube Live、Twitch 等!你需要制作一个图表,在视频播放器上调用 PlayURL 使其工作。Unity 视频播放器不支持这些直播流。

此外,AVPro 不在编辑器中播放——你需要构建并发布世界才能看到它工作。Unity 视频在使用指向支持的视频文件类型(如'mp4'和'webm')的链接时,可以在编辑器播放模式下工作。托管服务如 YouTube 和 Vimeo 只在客户端工作。

值得注意的是,AVPro 扬声器组件暗示支持 8 声道音频。这是不正确的——只能播放 6 声道(通常是 5.1 音频)。[AVPro 仅在 PCVR 上支持 EAC3 7.1 音频]

Android / Quest 兼容性​

VRChat 用于将链接解析为视频的应用程序现在也适用于 Android,因此以前需要的变通方法已不再需要。过去,高级用户存在一些变通方法,因为 Quest 没有 URL 解析器。

速率限制​

每个用户每五秒只能处理一个新的视频播放器 URL。这是所有视频播放器的全局限制。这适用于默认 URL 以及使用 LoadURL 和 PlayURL 设置的 URL。

对于单个视频播放器,这不是问题——但如果你有多个视频播放器,你需要确保请求不会在上一个请求后过快发送。

这也适用于后来加入者。如果你的世界中有 2 个视频播放器在运行,后来加入者将看到他们必须发送两个视频请求。如果未管理,他们将尝试同时发送并失败。如果世界中有多个视频播放器同时播放,你必须考虑到这一点。

支持的视频托管商​

要播放视频,你需要在编辑器中设置视频播放器时在"视频 URL"字段中提供 URL,或者将 URL 粘贴到预制体中提供的 VRCUrlInputField 中。

我们支持的托管商的完整列表请参见视频播放器允许列表。以下是一些推荐。

免责声明

以下列表不构成合作或认可关系。这些是广泛可访问且已测试与 VRChat 视频播放器正常工作的服务。

自己的托管​

  • 费用:付费 - 取决于提供商
  • 链接:直接链接到 .mp4 或 .webm 文件
  • 限制:如果你拥有允许列表之外的自己的托管,用户必须在设置中启用"允许不受信任的 URL"选项才能查看你的内容。

你可能需要考虑使用"内容分发网络"(CDN)来托管你的内容。如果你计划让许多用户访问你的视频,或为世界各地的许多用户提供快速服务,这非常有用。CDN 会将你的文件分发到全球多个服务器,以确保有接近观看者的源来保证快速下载。

我们已经测试了 Amazon Cloudfront 和 BunnyCDN。CDN 服务通常是付费服务,但批量存储/传输数据成本较低。然而,由于它们的开放性,它们不在我们的允许列表中,需要用户启用"允许不受信任的 URL"设置。

YouTube​

  • 费用:免费
  • 链接:使用'watch' url
  • 限制:无

Vimeo Basic​

Vimeo Pro 或 Business​

  • 费用:付费
  • 链接:使用直接视频链接
  • 限制:无

优化视频​

编码视频时,我们强烈建议上传网络优化版本。对于 .MP4 文件,此选项也称为"fast start"。这是一个一键设置,对自托管视频文件的可流式传输性有巨大影响。没有 fast start,你通常需要下载整个视频文件才能播放。启用 fast start 后,你可以分块流式传输视频文件,流将立即开始。

  • 在 FFMPEG 中,使用参数 -movflags +faststart。
  • 在 HandBrake 中,勾选"Web Optimized"复选框。
  • 其他软件应有类似选项来启用 fast start。

启用 Fast Start