Video Contact Sheets with Seek-Time Manifests

Sample evenly spaced frames into a JPEG or PNG contact sheet with optional seek-time labels and a JSON timestamp manifest.

ClaudeHermes AgentCodexCursorMIT (modify, redistribute and use commercially)Python

What it does

Samples a local video at evenly spaced seek positions, creates a JPEG or PNG tiled sheet, and records row, column, and requested seconds in JSON. Choose sample count, grid, thumbnail width, and optional time labels. FFmpeg handles all image processing.

How to use

Extract the ZIP and ask Claude, Hermes Agent, Codex, or Cursor to read SKILL.md. Supply local input and a new output directory. Use --dry-run first, then inspect the sheet and manifest.

Requirements

Python 3.10+, FFmpeg, and ffprobe installed separately. Labels need the drawtext filter and an available font. No external Python packages are required.

Caveats

Refuses existing output directories. Limits are six hours, 100 samples, and 64 million sheet pixels. Timestamps are requested seek positions, not verified decoded-frame PTS. Spare cells are black. No uploads, downloads, scene detection, or content understanding. Failed runs can leave partial output; choose a new directory to retry.

How to install

  1. Unzip the downloaded file (it contains a video-contact-sheet/ folder with SKILL.md).
  2. Copy the whole folder into your agent's skills folder.
    • Claude: ~/.claude/skills/ (per project: .claude/skills/)
    • Hermes Agent: ~/.hermes/skills/
    • Codex: ~/.agents/skills/ / Cursor: ~/.cursor/skills/
    • Claude app (claude.ai): upload the ZIP in Customize → Skills
  3. Restart the agent and check that the skill appears in its skill list.

Step-by-step install for Windows / Mac and each agent

Seller

動画編集が仕事

動画編集の準備から仕上がりの確認まで、毎日の作業を支援するスキルを制作しています。切り出し・字幕づくり・音声調整・文字起こしを、元の素材を残しながら進められるようにします。

10 published skills

Seller profile and all skills