video-analyzer
Use this skill when analyzing existing video files using FFmpeg and AI vision, extracting frames for design system generation, detecting scene boundaries…
Skill by mkurman
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/mkurman-video-analyzer
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/video-analyzer
What's inside
- Skill name
video-analyzer- Description
- Use this skill when analyzing existing video files using FFmpeg and AI vision, extracting frames for design system generation, detecting scene boundaries, analyzing animation timing, extracting color palettes, or understanding audio-visual sync. Triggers on video analysis, frame extraction, scene detection, ffprobe, motion analysis, and AI vision analysis of video content.
- License
- MIT
- Instructions
- 393 lines in SKILL.md · view on GitHub
Files (5)
- README.md
- SKILL.md
- evals.json
- ffmpeg-recipes.md · references/
- vision-analysis-prompts.md · references/
SKILL.md (first lines)
## Key principles 1. **Extract then analyze** - Always separate frame extraction (FFmpeg) from semantic analysis (AI vision). Trying to do both in one step leads to brittle pipelines. Extract frames to disk first, then analyze them. 2. **Use ffprobe before ffmpeg** - Before processing any video, inspect it with ffprobe to understand its properties. Blindly running FFmpeg commands on unknown formats leads to silent failures and corrupted output. 3. **Scene detection over fixed intervals** - When analyzing video content, extract frames at scene boundaries rather than fixed time intervals. Scene change frames capture the visual diversity of the video with far fewer frames than one-per-second extraction. 4. **JSON output everywhere** - Use ffprobe's JSON output format and structure your analysis results as JSON. This makes pipelines composable and results machine-readable. 5. **Disk space awareness** - Video frame extraction can generate thousands of large image files. Always estimate output size before extracting, use appropriate image formats (JPEG for analysis, PNG for pixel-perfect work), and clean up temporary frames after analysis. --- ## Core concepts ### FFmpeg pipeline architecture FFmpeg processes video through a pipeline of demuxing, decoding, filtering, encoding, and muxing. For analysis, we primarily use the decode and filter stages: ``` Input file -> Demuxer -> Decoder -> Filter graph -> Output (frames/data) ``` Key filter concepts for analysis: - `select` filter: choose which frames to output based on expressions - `showinfo` filter: print frame metadata (timestamps, picture type, etc.) - `scene` detection: pixel-level difference score between consecutive frames - `fps` filter: reduce frame rate to extract at regular intervals ### Scene detection Scene detection works by comparing consecutive frames using pixel difference. FFmpeg's `scene` filter produces a score from 0.0 (identical) to 1.0 (completely different). A threshold of 0.3-0.4 catches major scene changes while ignoring camera motion and lighting shifts. | Threshold | Behavior | |-----------|----------| | 0.1-0.2 | Very sensitive - catches pans, zooms, lighting changes | | 0.3-0.4 | Balanced - catches cuts, transitions, major changes | | 0.5-0.7 | Conservative - only hard cuts and dramatic scene changes | | 0.8-1.0 | Too aggressive - misses most scene changes | ### AI vision analysis workflow The workflow for extracting structured data from video using AI vision: 1. **Probe** - Get video metadata with ffprobe (duration, resolution, fps) 2. **Extract** - Pull key frames at scene boundaries using FFmpeg 3. **Read** - Load each frame image using the Read tool (supports images) 4. **Analyze** - For each frame, identify colors, typography, layout, components 5. **Aggregate** - Find consistent patterns across frames 6. **Output** - Produce structured design system or content analysis --- ## Common tasks ### 1. Install and verify FFmpeg Check if FFmpeg is available and inspect its version and capabilities. ```bash # Check FFmpeg installation ffmpeg -version # Check ffprobe installation ffprobe -version # Install on macOS brew install ffmpeg # Install on Ubuntu/Debian sudo apt-get update && sudo apt-get install -y ffmpeg # Verify supported formats ffmpeg -formats 2>/dev/null | head -20 # Verify supported codecs ffmpeg -codecs 2>/dev/null | grep -i h264 ``` ### 2. Extract key frames at scene boundaries Extract only the frames where significant visual changes occur. This is the most efficient way to sample video content. ```bash # Extract frames at scene changes (threshold 0.3) mkdir -p scenes ffmpeg -i input.mp4 \ -vf "select='gt(scene,0.3)',showinfo" \ -vsync vfr \ scenes/scene_%04d.png \ 2>&1 | grep showinfo # Extract with timestamps logged to a file ffmpeg -i input.mp4 \ -vf "select='gt(scene,0.3)',showinfo" \ -vsync vfr \ scenes/scene_%04d.png \ 2>&1 | grep "pts_time" > scenes/timestamps.txt # Extract scene frames as JPEG (smaller files, good for analysis)
From mkurman/zorai, MIT.
More from mkurman/zorai
- 0.798score
best-practices
web-quality-skills
Apply modern web development best practices for security, compatibility, and code quality.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
video-audio-design
mkurman
Use this skill when adding audio to programmatic videos - generating narration with ElevenLabs TTS, sourcing royalty-free background music, creating SFX with…
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
internal-docs
mkurman
Use this skill when writing, reviewing, or improving internal engineering documents - RFCs, design docs, post-mortems, runbooks, and knowledge base articles.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
proposal-writing
mkurman
Use this skill when writing proposals, responding to RFPs, drafting SOWs, or developing pricing strategies.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
budgeting-planning
mkurman
Use this skill when building budgets, conducting variance analysis, implementing rolling forecasts, or allocating costs.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
create-workflow
mkurman
Conversational guide for creating valid YAML workflow definitions.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
product-strategy
mkurman
Use this skill when defining product vision, building roadmaps, prioritizing features, or choosing frameworks like RICE, ICE, or MoSCoW.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
brand-strategy
mkurman
Use this skill when defining brand positioning, voice and tone guidelines, brand architecture, or storytelling frameworks.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
social-media-strategy
mkurman
Use this skill when planning social media strategy, creating platform-specific content, scheduling posts, or analyzing engagement metrics.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
compensation-strategy
mkurman
Use this skill when benchmarking compensation, designing equity plans, building leveling frameworks, or structuring total rewards.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
account-management
mkurman
Use this skill when managing key accounts, planning expansions, running QBRs, or mapping stakeholders.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
lead-magnets
mkurman
When the user wants to create, plan, or optimize a lead magnet for email capture or lead generation.
SkillAFreshness: A★ 325Claude Code +9
Signals
- Stars
- 325
- Forks
- 24
- Open issues
- 0
- Last commit (this folder)
- May 5, 2026 (5 months ago)
- Last release
- Oct 23, 2026 (4 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/mkurman/zorai
- Website
- zorai.app/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from mkurman
- 0.597score
compensation-strategy
mkurman
Use this skill when benchmarking compensation, designing equity plans, building leveling frameworks, or structuring total rewards.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
account-management
mkurman
Use this skill when managing key accounts, planning expansions, running QBRs, or mapping stakeholders.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
brand-strategy
mkurman
Use this skill when defining brand positioning, voice and tone guidelines, brand architecture, or storytelling frameworks.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
budgeting-planning
mkurman
Use this skill when building budgets, conducting variance analysis, implementing rolling forecasts, or allocating costs.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
create-workflow
mkurman
Conversational guide for creating valid YAML workflow definitions.
SkillAFreshness: A★ 325Claude Code +9 - 0.597score
internal-docs
mkurman
Use this skill when writing, reviewing, or improving internal engineering documents - RFCs, design docs, post-mortems, runbooks, and knowledge base articles.
SkillAFreshness: A★ 325Claude Code +9
Cite this page
video-analyzer skill. Agent Mart. https://agentmart.dev/skills/mkurman-video-analyzer (last updated 2026-10-24)