Skip to content

⏩ VizVid - Brand new original video player frontend for VRChat, aims for flexibility.

License

Notifications You must be signed in to change notification settings

JLChnToZ/VVMW

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VizVid

Banner

Welcome! VizVid is a general-purpose video player frontend for use in VRChat. It aims to cover many use cases, from watch-together video/live stream player in lounges, to large event venue for music performances, or even booths for exhibitions or showcases. Due to its target customers, it has a flexible architecture, just like a factory made electronic but with a easy to open back lid, make it easier to let users mess them around for their needs.

Features

  • Basic playback, seeking controls
  • Pre-defined playlists & user queue list
  • Playback history for user inputed URLs (since v1.0.32)
  • Quest (Android) client specific URLs (only available on pre-defined URLs, play lists and API)
  • PNG/JPEG Image Viewer (since v1.0.37)
  • Low latency mode, (tested with RTSP/RTMP streams)
  • Playback speed adjustment (since v1.1.0)
  • Smart request handling, debounces switch video requests to avoid rate limit errors (since v1.1.0)
  • Local mode (toggleable syncing with other users within instance before uploading)
  • Modulized screen, audio & UI architecture, support multiple instances
  • Both on-screen & separated interfaces available
  • (Almost) one-click to change interface colors
  • Supports both legacy UI and TextMeshPro setup (since v1.0.32)
  • Local pickupable & scaleable screen
  • Wrist band (VR) / keyboard (desktop) resync button & volume controls
  • Auto plays when local user steps into specific region
  • Auto fades out background music when video is playing
  • Custom shader with various display modes built-in (Stretch, Contain, Cover, Stereographic Video Source), can be configurated on material options
  • Luminance adjustment for screens using built-in materials (sice v1.1.0)
  • Localization system with auto language detection (English, Chinese, Japanese & Korean)
  • Locked UI with Udon Auth.
  • Basic Audio Link support, which will auto switch audio source when playing, also reports player state (playback progress, volume, loop, shuffle, etc.) on newer version (1.0.0+).
  • Basic LTCGI integration, provided CustomRenderTexture for use.
  • Bundled a modified version of YTTL to display video title from known sources.
  • Simple API for [your own udons] integration.
  • Privacy first - We guarantee we do not include features that requires dedicated server to work; Also, features requires external resources are not opt-in by default.

Demo

Please visit the official demo world!

Documentation

Please refer to another readme for details.

Installation

You may use following methods:

  • Via VCC (Recommend):
    1. Ensure you have installed VRChat Creator Companion, if not, download here.
    2. Go to my package listings landing page, click "Add to VCC" button under the banner and follow instructions.
    3. You can then go to "Manage Project" of your own world project, click on the "+" button to add the player component.
    4. Enjoy!
  • Via Command Line:
    Alternatively, instead of VCC, if you are an advanced geek like to use command line, you may use a tool called vrc-get:
    cd path/to/your/world/project/folder
    vrc-get repo add https://xtlcdn.github.io/vpm/index.json
    vrc-get install idv.jlchntoz.vvmw
  • Via Booth: Click here.
  • Via GitHub Releases: Click here.

Issues

For any issues, please contact me on Discord server or file an issue on GitHub if you believe there is a bug.

Credits

Special Thanks

  • LR163 / Cross - Early Stage Functionality & (Live Streaming) Latency Test
  • HsiaoTzuOWO - UI & Implementation Test
  • Yan-K - UI / UX Consultant
  • 六森 - Advertisement Materials & Demo World
  • 水鳥waterbird - Naming & Japanese Documentation Proofreading
  • Kuriko - Japanese Documentation
  • All GitHub Contributors

License

MIT


Made with ❤️ in 🇭🇰 🇹🇼.