VRCS is a Windows real-time subtitle, translation, and language-learning tool for VRChat. Capture system audio and microphone input for desktop or SteamVR subtitles, translate text in images with OCR, and use subtitles for dictionary lookup, learning analysis, and Anki cards.
Download · Report an issue · Contribute · Discord · QQ Group
Download VRCS-<version>-windows-x64.exe from GitHub Releases.
- Windows 10 or 11 with Microsoft Visual C++ v14 Redistributable (x64).
- Local Qwen ASR supports CPU or Vulkan. Download its runtime and model in recognition settings.
- An internet connection is needed for the initial Silero VAD download and, if enabled, Smart Turn semantic endpointing.
- Cloud recognition, translation, and learning analysis require the selected provider's API credentials. Provider charges may apply.
- For OCR, download local models or configure a PaddleOCR cloud access token.
- Follow the setup wizard to select a language and local or cloud recognition.
- Select system audio, VRChat process audio, or microphone input, then test the microphone and adjust the voice activation threshold.
- Start transcription. Enable translation, Chatbox output, or the SteamVR overlay as needed.
To run the wizard again, open Settings › System. Open Settings › System › Features to turn off optional features. The feature stops and its settings and actions disappear. Your configuration and data are kept and restored when you turn it back on.
- Real-time subtitles from system or VRChat process audio alongside microphone input, with separate controls for the two audio streams, compact window mode, and local session history.
- Local Qwen3 ASR on CPU or Vulkan, plus cloud recognition with Qwen3 ASR, Fun-ASR, OpenAI Realtime, Gemini, Groq, and OpenRouter. Silero VAD and optional Smart Turn control speech segmentation.
- Manual or automatic translation with DeepL, Microsoft Translator, OpenAI, Gemini, Alibaba Cloud LLM, and OpenAI-compatible services. Configure up to three target languages per audio stream, each with its own service and model.
- Qwen Live Translate, Gemini Live Translate (Preview), and OpenAI Realtime Translation produce live source text and translations for each stream's first target language. Qwen also distinguishes speakers.
- Custom prompts, local glossaries, online glossary subscriptions, recent subtitle context, and optional world and member information from VRCX-0. Save language presets to switch recognition language, translation targets, and Chatbox sending strategies.
- Send final microphone subtitles and translations to the VRChat OSC Chatbox, with quick input, translation preview, and multilingual output. With OSCQuery mute synchronization enabled, automatic sending stops when muted or when mute status is unknown.
- SteamVR headset subtitles and a wrist conversation view, with source text, translations, and multilingual display. Adjust languages, subtitle position, size, opacity, and Chatbox settings from the dashboard.
- Desktop OCR: use a configurable shortcut to drag-select visible text on the desktop or in other apps, including across monitors. Screen snapshots are used only for local selection; only the selected area enters OCR. There is no full-screen selection action. View source text and multilingual translations in a result window, copy them, or scan again.
- VR OCR: select text with hand gestures or controllers and display translations on a wrist panel or over the source in both eyes.
- PaddleOCR cloud recognition or local PP-OCRv6 for OCR. Download local models in Settings and use CPU or a DirectML GPU.
- Desktop visual question answering: enable visual question answering and desktop mode in Settings → Vision, then select an image-capable API profile and model. Press
Ctrl+Alt+V(configurable) to drag-select visible content on the desktop or in other apps, including across monitors. Screen snapshots are used only for local selection, with no full-screen selection action. Type a question or recognize speech and edit the result, then explicitly send only the selected image and question from the question window. VR Overlay and OCR are not required. - VR visual question answering: select a region, then hold the left trigger to start temporary microphone capture and ask a question.
- Import Yomitan dictionaries, look up subtitle text or Ask AI, collect learning material, and review definitions, sentence patterns, and conversations. Edit vocabulary, sentence-pattern, or cloze card drafts and create cards through AnkiConnect.
VRCS does not store raw audio. Subtitle history, learning items, dictionaries, and settings are stored locally by default. Local Qwen ASR and local OCR process audio and images on the device; cloud recognition sends speech segments or selected images to the chosen provider.
Translation, learning analysis, and Ask AI send relevant text, explicitly selected context, and submitted questions to the configured service. Whether text from local recognition is sent to the cloud depends on the selected translation and AI services.
Requirements: Windows 10 or 11, Node.js 24+, Rustup with the version and components in rust-toolchain.toml, Visual Studio Build Tools with Desktop development with C++, and CMake on PATH.
Run from the repository root in PowerShell:
npm install
npm run devThe default build uses CPU for local Qwen ASR. Use npm run dev:vulkan for Vulkan acceleration; the loader is prepared automatically, with no GPU SDK or shader compiler needed. Download the Qwen runtime and model in recognition settings. For standalone backend development, see Core README.
Run checks relevant to your changes:
npm run check:i18n
npm --workspace apps/desktop test
npm run build:frontend
.\scripts\check-rust.ps1The Rust script checks formatting, Clippy, and tests for both crates. Add -Vulkan for Vulkan changes.
Build the Windows installer with CPU and Vulkan support:
npm run buildSee CONTRIBUTING.md for contribution guidelines and LOCALIZATION.md for interface translations.
GNU Affero General Public License v3.0 (AGPL-3.0-only). Third-party licenses are listed in THIRD_PARTY_NOTICES.md.
