Game Capture is a native Windows app for publishing gameplay to VDO.Ninja with low friction and production-friendly defaults.
- Window audio capture without virtual audio cables.
- Camera/webcam video with selectable microphone or other Windows input devices.
- Hardware-accelerated encoding and bitrate presets for game feeds.
- Dual-stream routing (HQ/LQ) for room roles and monitor paths.
- Multiple viewers from a single HD encode workflow.
- Native app (no Electron), lower memory footprint.
- Simple OBS alternative for guest-side feed publishing.
- VDO.Ninja-compatible links and room workflows.
- Download the installer from the latest release.
- Launch Game Capture and pick a game window, camera/webcam, or Spout2 sender.
- Enter a stream ID (or paste a full VDO.Ninja URL) and go live.
- Use the generated view links in OBS.
While streaming, capture/encoder settings are intentionally locked to prevent mid-stream drift between UI and runtime state. Stop first to change advanced settings.
Logs are available via Help -> Open Log Folder (%LOCALAPPDATA%\GameCapture\logs).
- Set
Video SourcetoCamera / Webcam. - Choose the camera, resolution, frame rate, and
Microphone / Inputdevice. - Paste a Stream ID or VDO.Ninja URL, then go live.
Camera mode selects the chosen microphone/input as the primary audio source by default. Once live, Selected Source Preview shows the local camera feed seen by the publisher. Microphone inputs from 8–384 kHz, mono through multichannel, and 16/24/32-bit PCM or 32-bit float are converted to the 48 kHz stereo format used for WebRTC. Advanced settings can switch to system output, disable audio, or mix the microphone with another audio source. Windows can list installed virtual cameras even when their sender is inactive; Game Capture waits for a real first frame and stops startup with an actionable error instead of publishing a blank source. The same bounded error path handles disconnected cameras and cameras already owned by another app. If a device is missing, enable desktop camera or microphone access in Windows Privacy & security settings and click Refresh.
Game Capture can publish a local Spout2 sender from VTube Studio, Warudo, VSeeFace, VNyan, and other Windows avatar or graphics apps. This avoids capturing the app's controls and preserves transparent pixels for the alpha or chroma workflow.
- Enable Spout or Spout2 output in the source app and keep it running.
- In Game Capture, set
Video SourcetoSpout2 (avatar apps). - Select the sender, enter the VDO.Ninja stream or room details, and go live.
- Use H.264 for normal video,
VP9 (OBS Alpha Preview)for true transparency, orAlpha Background -> Chroma backgroundfor a hardware-encoded chroma-key feed.
Spout2 carries video only. Game Capture defaults Spout2 sources to no audio, so choose an output mix or microphone separately when needed. If the sender is missing, enable its Spout output and refresh the list. If it appears but renders black, configure Game Capture and the sender app to use the same GPU in Windows Graphics settings.
See the Game Capture and Spout2 setup guide for the receiver choices and troubleshooting steps.
For same-user automation and local issue collection, the compiled app can expose an opt-in loopback JSON API with --local-control. It provides diagnostics, recent logs, source discovery, issue-report export, stop, and quit commands. See docs/local-control-api.md.
- Runtime logs are written to
%LOCALAPPDATA%\GameCapture\logs\game-capture-debug.log. - On Windows, hard crashes write best-effort reports to
%LOCALAPPDATA%\GameCapture\crashes. - A crash report includes a small
.jsonsummary and a.dmpminidump. If startup or Go Live fails, attach the latest log and crash report when filing an issue.
- For transparent playback in OBS, choose
VP9 (OBS Alpha Preview)and enable the alpha workflow. - VP9 alpha requires
ffmpeg.exewith libvpx/VP9 support. Windows releases include a pinned LGPL FFmpeg bundle underffmpeg/bin/ffmpeg.exe; advanced users can override it with--ffmpeg-pathor the FFmpeg Path setting. - Transparent playback in OBS requires the VDO.Ninja OBS plugin with
Use Native Receiver (Experimental)enabled. OBS Browser Sources and normal browser viewers do not composite the alpha track. - Compatible OBS VDO.Ninja native receivers automatically upgrade that stream to dual-track VP9 transparency.
- Browser viewers remain compatible, but they stay standard color video.
- For hardware encoding compatibility, leave VP9 alpha disabled and use
Alpha Background -> Chroma background. Game Capture composites transparent Spout2/window pixels over the selected color before H.264/NVENC encode, so the receiver can chroma-key the feed. - If you need the broadest viewer compatibility, leave alpha disabled.
- AV1 alpha-preserving encode remains experimental and is not the current OBS transparency path.
On the tested machine, the installed NVIDIA driver exposes NVENC API 12.2, while the bundled FFmpeg AV1 encoder requires NVENC API 13.0 and reports NVIDIA driver 570.0 or newer as the minimum. Game Capture therefore falls back to software AV1 encoding on this configuration. H.264 hardware encoding works reliably; select H.264 or update the NVIDIA driver if AV1 falls back to software.
VP9 alpha is CPU-encoded and software-heavy because Game Capture encodes both the color video and a second alpha video track. The default VP9 settings already use libvpx realtime mode with the fastest -cpu-used 8 setting. If the encoder overloads, lower output resolution/FPS first; 1080p30 or 720p60 are safer starting points than 1080p60. Advanced users can use FFmpeg Options to override output options; for example, -g 30 -keyint_min 30 can reduce all-keyframe cost, but recovery after packet loss or late joins may be slower.
Web landing/download page:
docs/gamecapture.html
Latest release:
Stable direct-download asset names (safe for website links):
game-capture-setup.exegame-capture-portable.exegame-capture-win64.zip
Versioned assets are also published each release:
game-capture-<version>-setup.exegame-capture-<version>-portable.exegame-capture-<version>-win64.zip
Prerequisites:
- Visual Studio 2022 (C++)
- CMake 3.24+
- Qt6
cd native-qt
mkdir build
cd build
cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake
ninjaPrimary QA plans and gates live in native-qt/qa/.
Fast gate:
powershell -NoProfile -ExecutionPolicy Bypass -File .\native-qt\qa\run-fast-gate.ps1 -BuildDir build-review2 -Configuration ReleaseRelease readiness:
powershell -NoProfile -ExecutionPolicy Bypass -File .\native-qt\qa\run-release-readiness.ps1 -BuildDir build-review2 -Configuration ReleaseUse docs/RELEASES.md for the exact release checklist, including fixed asset names, signing commands, VirusTotal commands, and troubleshooting.
Read CONTRIBUTING.md before opening PRs. Contributor terms include CLA/license grant requirements for this repository.
This repo is focused on the native Windows app (native-qt) and supporting release/docs flow.
Free and open source (AGPL-3.0). See LICENSE.