Download the latest version of RVR here. Go to the official website page for installation guidance.
Runtime Video Recorder (RVR) is a production-ready Unreal Engine solution that enables MP4 video recording at runtime without game or render thread hitches. Built with performance in mind, it supports hardware-accelerated encoding on Windows (WMF), MacOS (AVFoundation), Oculus/Android (MediaCodec), Linux (OpenH264), and includes specialized features for VR and multi-camera setups.
✨ Zero Performance Impact
- Asynchronous encoding on dedicated thread
- No game thread blocking
- Hardware acceleration support (Windows, Mac, Android, Oculus)
🎥 Flexible Recording Sources
- Game/Editor viewport recording
- Render target recording
- Single camera recording (Camera & CineCamera)
- Multi-camera grid recording
- 360-degree video support (experimental)
🎵 Audio Recording
- Full in-game audio capture
- Selective SoundSubmix recording
- Synchronized audio/video encoding
⚡ Advanced Features
- Frame-rate independent recording
- Manual frame capture mode
- Circular buffer (record last N seconds)
- Deferred encoding option
- Real-time camera preview
- Screenshot capture
| Platform | Status | Hardware Acceleration | Encoder |
|---|---|---|---|
| Windows (Win64) | ✅ Full Support | ✅ Yes (WMF) | H.264 |
| MacOS | ✅ Full Support | ✅ Yes (AVFoundation) | H.264 |
| Android | ✅ Full Support | ✅ Yes (MediaCodec) | H.264 |
| Oculus | ✅ Full Support | ✅ Yes (MediaCodec) | H.264 |
| Linux | ✅ Full Support | ❌ Software | OpenH264 |
The plugin automatically enables these required plugins:
- AudioCapture - For audio recording functionality
- ElectraPlayer - For video playback support
Check:
- Is another recording already in progress? Call
IsRecordingInProgress() - Does the output directory exist? Plugin won't create directories
- Are required plugins enabled? (ElectraPlayer, AudioCapture)
Solutions:
- Increase
VideoBitrate(try 30000000 for 30 Mbps) - Use
Profile_Highencoder profile - Set
RCModetoRC_Quality - Increase
TargetQualityto 75-90
Solutions:
- Enable hardware acceleration in Project Settings
- Lower video resolution
- Reduce
TargetFPS - Use
bPostponeEncoding = false(default on-the-fly encoding) - Disable
bDebugDumpEachFrame
Check:
bFrameRateIndependentmust befalsefor audio recording- Ensure game is running at stable framerate
- Try increasing audio buffer size in project audio settings
Windows:
- Check GPU drivers are up to date
- Try setting
bForceHardwareAccelerationForAllVendors = truefor AMD/Intel - Some older GPUs may not support H.264 encoding
Android:
- Verify device supports MediaCodec H.264 encoding
- Some emulators don't support hardware encoding
The plugin includes sample content in the Content folder:
- Level_RuntimeVideoRecorder.umap - Demo level with recording UI (UE 5.2 and below)
- Level_RuntimeVideoRecorder_UE53Plus.umap - Demo level for UE 5.3+
- BP_RVR_GameMode - Example game mode with recording controls
- BP_RVR_VideoPlayer - Video playback widget
- Widget_AndroidRecording - Mobile-friendly recording UI
- Support Discord: Join Community
- Developer: Unreal Solutions
Made with ❤️ for the Unreal Engine Community
⭐ Star this repo if you find it useful!