Calculate VMAF, VMAF NEG, VMAF v1, SSIMULACRA2, Butteraugli and ColorVideo VDP on NVIDIA, AMD and Intel GPUs, alongside PSNR, SSIM and XPSNR. Compare encodes with frame-exact playback that switches between the source and each encode instantly to easily spot differences.
New in v2.1: VideoMetricsLab is now a C++ app: a 39 MB download instead of 87 MB, 1.25x faster runs, and a window that opens 3x faster and idles in a third of the memory. See the changelog and the C++ port.
Metrics
- VMAF v0.6.1, VMAF NEG, VMAF v1, PSNR, SSIM, XPSNR, SSIMULACRA2, Butteraugli and ColorVideo VDP, for many test videos at once.
- VMAF models for standard, phone, 4K and HFR viewing.
Fast on any GPU
- VMAF, VMAF NEG and VMAF v1 on NVIDIA, AMD and Intel GPUs with libvmaf-fast: VMAF v1 up to 17x faster.
- SSIMULACRA2, Butteraugli and ColorVideo VDP on the GPU with Vship (CUDA, HIP or Vulkan); libjxl on the CPU when no GPU can be used, for SSIMULACRA2 and Butteraugli.
- PSNR, SSIM and XPSNR 2.7x-11x faster, calculated in the app.
- GPU video decoding, with software decoding for formats the GPU can't handle, such as VVC.
Compare and inspect
- Frame-exact playback that switches instantly between the source and each encode (hold S), with zoom, at up to 120 fps in 4K HDR.
- Metric curves, statistics and per-frame scores (per second for ColorVideo VDP), with each metric's best and worst results highlighted.
- Bitrate by frame, second or GOP.
Workflow
- Black bars and resolution mismatches handled automatically.
- Results saved and reloaded automatically.
- Drag and drop videos, sort and reorder the list, and a dark theme.
- A command line,
VideoMetricsLab-cli, for scripts. - Two test videos calculated in parallel on many-core CPUs.
Configure each test independently, inspect its codec and bitrate, and calculate multiple quality metrics in one run.
Compare real per-frame curves and distribution statistics. The frame readout shows both test values and their signed delta at the same moment.
Switch instantly between the reference and test encodes during playback, or seek to an exact frame for close inspection.
Analyze video-only bitrate independently by frame, second, or GOP.
- Select a reference video.
- Add one or more test videos.
- Choose the metrics to calculate.
- Click Calculate metrics.
Results appear in the video table and Metric Graphs tab as each test finishes. Video Compare and Bitrate Viewer can also be used without calculating metrics.
For detailed instructions, see the User Guide.
Download the Windows zip from the latest release,
extract it, and run VideoMetricsLab.exe.
The app requires FFmpeg 9 or newer with libvmaf. FFmpeg is not bundled; the
app prompts for its location if it is not available on PATH.
Requires Visual Studio 2022, CMake 3.25+, Qt 6.12 and MinGW-w64; see the contributing guide:
./scripts/build_release.ps1 -QtPath C:\Qt\6.12.0\msvc2022_64- Windows 10 or 11
- FFmpeg 9+ with
ffmpeg,ffprobe, andlibvmaf - Optional NVIDIA, Intel, or AMD GPU for hardware decoding and the GPU metrics
cd cpp
cmake --preset windows -DCMAKE_PREFIX_PATH=C:/Qt/6.12.0/msvc2022_64
cmake --build --preset windows-release
ctest --preset windows-releaseBuild the distributable with ./scripts/build_release.ps1. See the
build guide and contributing guide for more.
User Guide · Troubleshooting · Known Issues · Architecture · Changelog · Security
Licensed under the MIT License. Copyright (c) 2026 4KVCD. Third-party components retain their own licenses; see Third-Party Notices.
If VideoMetricsLab has been useful to you, I'd love to hear from you!
💬 Leave a comment / say thanks
You can also ⭐ star the repository — it helps me know people are finding the project useful.
See the changelog for what changed in each version.



