DevOps January 2026

CI/CD Video Capture for Unreal Engine

Every failed test gets a video. Automatically.

The Problem

Automated tests fail. Without video, you don't know why.

Test Output:

FAILED: PlayerMovementTest
Expected: Player at position (100, 200)
Actual: Player at position (100, 198)

→ What happened? No idea. Run it again manually?

Why Alternatives Fail

Tool Headless? Problem
OBS No Requires display, manual start
NVIDIA ShadowPlay No Requires GPU + display
FFmpeg screen capture No Needs display server
RVR Yes Records from engine, no display needed

The Solution

RVR records from inside Unreal Engine. No display. No external process.

# Jenkins/GitHub Actions pipeline

1. Game starts with RVR enabled
2. Automated test runs
3. Test fails → RVR.SaveReplayBuffer()
4. Video uploaded to artifact storage
5. Bug report includes video link

Integration

// In your automated test

if (TestFailed())
{
    // Save last 60 seconds
    VideoRecorder->SaveReplayBuffer();
    
    // Upload to CI artifacts
    FString VideoPath = VideoRecorder->GetLastRecordingPath();
    UploadToBuildArtifacts(VideoPath);
}

Key Features

Headless Operation

Runs on build servers without monitors. Works in Docker containers.

Crash Recovery

If game crashes, video is preserved. Captures the crash moment.

Replay Buffer

Always recording. Save only when test fails. No wasted storage.

Event Triggers

Auto-save on assertions, exceptions, test failures.

ROI

80%
Faster flaky test diagnosis
0
"Can't reproduce" from CI
24/7
Automated coverage

Supported Environments

Jenkins GitHub Actions GitLab CI TeamCity AWS Device Farm Docker