Select sources and range
Choose one aligned reference and candidate, then apply one shared inclusive frame range. Source identity, resolution, frame rate, and declared frames establish the expected contract.

Reference comparison
Compare an aligned reference and candidate using VMAF, PSNR, and SSIM. Preview, progress, coverage, and scores follow the same selected frame pairs.
Studio workspace
Reference and candidate previews use equal dimensions. Live values are cumulative and explicitly labeled; pause, resume, and stop operate on the same comparison worker.

VMAF, PSNR, and SSIM measure the same selected frame pairs. Inputs must already match in content, dimensions, and frame rate.
| Measurement | Native scale | Implementation |
|---|---|---|
| VMAF | 0-100 | Every submitted 8-bit I420 decode-index pair is sent directly to libvmaf; the final value is the pooled result for those pairs. |
| PSNR | dB | Direct full-resolution I420 calculation with cumulative Y/U/V values and retained minimum/maximum evidence. |
| SSIM | 0-1 | Non-overlapping 8 x 8 planar SSIM, exported and displayed as (4Y + U + V) / 6. |
| Pair count and coverage | Frames / percent | Studio applies one inclusive frame-index range to both sources. Exports retain selected and compared pairs, both declared frame counts, source coverage, and selected-range coverage. |
Inputs must have matching content, dimensions, and frame rates. CoreVQ does not perform timestamp or offset alignment, dropped-frame compensation, crop, or scale conversion. Missing pairs inside the selected range produce an incomplete comparison; a source-length difference entirely outside a completed selected range does not. The measured domain is 8-bit I420 converted from decoded BGR; it is not HDR-aware and does not evaluate audio.
The convenience score combines 60% VMAF, 25% normalized SSIM, and 15% normalized PSNR.
SSIM and PSNR are converted to bounded 0-100 quality components. Available weights are renormalized if a metric is unavailable.
Select an aligned pair and shared range, then analyze, pause, resume, or stop. Exports retain coverage and partial-result status.
Choose one aligned reference and candidate, then apply one shared inclusive frame range. Source identity, resolution, frame rate, and declared frames establish the expected contract.
A worker decodes the selected same-index pairs, converts them to I420, updates metrics, and emits paired previews and progress within the chosen range.
Pause suspends the worker. Resume continues it. Stop preserves completed-pair evidence and labels the result Partial.
CSV and JSON include frame bounds, per-input times, source and selected-range coverage, metrics, composite score, grade, status, warning, and provenance.