video-comparer_skill

This skill compares two videos and generates an interactive HTML report with PSNR/SSIM metrics and frame-by-frame visual comparisons.
  • Python

609

GitHub Stars

3

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill daymade/claude-code-skills --skill video-comparer

  • .security-scan-passed181 B
  • README.md9.6 KB
  • SKILL.md5.3 KB

Overview

This skill compares two videos and generates a self-contained, interactive HTML report to analyze compression results and visible quality differences. It extracts video metadata, computes PSNR and SSIM, and produces frame-by-frame visual comparisons with slider, side-by-side, and grid viewing modes. The report is offline-ready and includes zoom controls and aggregated quality summaries.

How this skill works

The tool validates inputs and probes each video with FFprobe, extracts frames at a configurable interval using FFmpeg, and scales frames to a consistent height for fair comparison. It computes pixel-level (PSNR) and perceptual (SSIM) metrics per frame and aggregates them across the clip. Frames are embedded as base64 images into a single HTML file and temporary files are cleaned automatically. Security checks prevent path traversal, command injection, and enforce file-size and timeout limits.

When to use it

  • When you need to compare an original video against a compressed or transcoded version
  • To evaluate codec choices, bitrate reductions, or parameter tuning impact on visual quality
  • When producing before/after reports for quality assurance or delivery sign-off
  • For automated batch comparisons across multiple assets or versions
  • When you want a portable, shareable interactive report without running a server

Best practices

  • Install and verify FFmpeg/FFprobe on the host before running comparisons
  • Use the same resolution and color space for both videos when possible to avoid misleading metrics
  • Increase frame extraction interval for long videos to reduce processing time, or lower it for critical segments
  • Keep input files under the configured size limit or adjust the constant if you control the environment
  • Run batch jobs in a controlled environment with sufficient CPU and a timeout buffer to avoid truncation

Example use cases

  • Compare a master file and its CDN-transcoded output to confirm acceptable quality loss
  • Benchmark two encoders or bitrate ladders by generating side-by-side metric summaries
  • Create a client-facing report showing visual differences after applying a new compression profile
  • Automate nightly comparisons of recently encoded assets to detect regressions
  • Generate compact QA artifacts for bug reports that include both metrics and visual evidence

FAQ

The report computes PSNR for pixel-level similarity and SSIM for perceptual similarity, and presents aggregated and per-frame values.

Do I need a web server to view the report?

No. The HTML is self-contained with embedded images and works offline in any modern browser.

What if FFmpeg isn't installed?

The script validates FFmpeg/FFprobe at startup and returns a clear error with installation guidance if they are missing.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational