Skip to content
Marketing
Skill

/analyze-video

Analyze a reference video and reverse-engineer its style into a reusable Seedance 2.0 prompting template. The output is a new skill/formula (like seedance-2-ugc.md) that captures the video's structure, pacing, camera work, edit style, and tone so it can be recreated with any

BOOST
From plugin
arcads-claude-code
1.6k8 skills
Install
$ npx -y skills add krusemediallc/arcads-claude-code --skill analyze-video --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/analyze-video

Context preview

The summary Claude sees to decide when to auto-load this skill.

Analyze a reference video and reverse-engineer its style into a reusable Seedance 2.0 prompting template. The output is a new skill/formula (like seedance-2-ugc.md) that captures the video's structure, pacing, camera work, edit style, and tone so it can be recreated with any

SKILL.md

analyze-video.SKILL.md
name: analyze-video
description: >
  Analyze a reference video and reverse-engineer its style into a reusable Seedance 2.0
  prompting template. The output is a new skill/formula (like seedance-2-ugc.md) that
  captures the video's structure, pacing, camera work, edit style, and tone so it can be
  recreated with any product, any person, in any setting. Use this whenever someone provides
  a video they want to use as a style reference, says "I want to make videos like this",
  "deconstruct this video", "turn this into a template", "analyze this style", or drops
  a video file and wants to recreate that format repeatedly.

Analyze Video → Reusable Prompting Template

Someone found a video style they love. Your job is to deconstruct it into a reusable prompting template — a formula they can plug any product, person, or setting into and get that same style back from Seedance 2.0.

**Critical constraint: Seedance 2.0 has a 15-second maximum per clip.** The reference video may be longer than 15 seconds (often 30-60s). Your template must be designed for 15-second output — which means distilling the style's essence into what can be captured in a single 15-second clip, and providing a multi-clip strategy for recreating the full effect of longer-form styles across a series of clips.

The output is NOT a single prompt. It's a **template skill** saved to `skills/arcads-external-api/prompting/prompt-library/` that works the same way [seedance-2-ugc.md](../prompt-library/seedance-2-ugc.md) works — a documented formula with layers, variables, options, and examples that the agent can use to generate unlimited prompts in that style.

Dependencies

  • **ffmpeg** / **ffprobe** — required for frame extraction (Step 1). Install via `brew install ffmpeg` on macOS.
  • **whisper** — optional, for audio transcription (Step 2). Install via `pip3 install openai-whisper`. If unavailable, the agent can ask the user to provide dialogue manually.

Inputs

  • **Video file** (required): path to `.mp4`, `.mov`, `.webm`, or similar
  • **Style name** (optional): what to call this template (e.g., "car-review", "unboxing-hype", "skeptic-converted"). If not provided, you'll name it based on what you observe.

Step 1: Extract frames and audio

Run the extraction script:

bash "skills/arcads-external-api/prompting/analyze-video/scripts/extract-frames.sh" "<video_path>" "/tmp/video-analysis" <num_frames>

Frame count by duration:

  • Under 10s → 8 frames
  • 10-20s → 12 frames
  • 20-30s → 16 frames
  • Over 30s → 20 frames

Read `metadata.txt` for duration, resolution, and fps.

Step 2: Transcribe audio

Try transcription tools in this order:

1. `whisper` CLI: `whisper /tmp/video-analysis/audio.wav --model base --output_format txt --output_dir /tmp/video-analysis` 2. Python whisper: quick inline script 3. If nothing is available, ask the user to provide dialogue or install whisper (`pip3 install openai-whisper`)

The transcript helps you understand pacing, speech rhythm, filler word usage, and how dialogue interleaves with action — all of which define the style.

Step 3: Study the reference templates

Read the existing Seedance 2.0 prompting templates to understand the gold standard for how a template should be structured:

  • [seedance-2-ugc.md](../prompt-library/seedance-2-ugc.md) — 9-layer UGC formula (richest example)
  • [seedance-2-premium-reveal.md](../prompt-library/seedance-2-premium-reveal.md) — 6-layer dark-void reveal
  • [seedance-2-product-hero.md](../prompt-library/seedance-2-product-hero.md) — 6-layer elemental product hero
  • [seedance-2-studio-lookbook.md](../prompt-library/seedance-2-studio-lookbook.md) — 7-layer studio lookbook
  • [seedance-2-feature-walkthrough.md](../prompt-library/seedance-2-feature-walkthrough.md) — 7-layer feature demo

Also read the main model guide for platform rules:

  • [seedance-2.md](../prompt-library/seedance-2.md) — API parameters, prompt length, forbidden words, adaptation checklist

Notice the structure these templates share:

  • They identify **layers** (the structural building blocks of the style)
  • Each layer has a **pattern** (the repeatable sentence structure with `{{VARIABLES}}`)
  • Variables come with **option banks** (tables of choices that fit the style)
  • There are **rules and principles** that explain why certain choices matter
  • There are **complete examples** showing the template fully filled in

Your output template needs to hit the same level of depth and usability.

Step 4: Analyze the frames — identify what defines this style

Read ALL extracted frames. You're not describing one specific video — you're identifying the **transferable patterns** that make this style what it is.

Ask yourself for each dimension: "What about this is specific to THIS VIDEO (the person, the product, the setting) vs. what is THE STYLE (the approach, the structure, the feel)?"

Only the style goes into the template. The specifics become variables.

Structure & pacing

  • How long is the video? (The source video will often be 30-60s, which is fine — you'll compress the style for 15s output.)
  • How many distinct scenes/beats are there? Which 2-3 are the ESSENTIAL beats that define the style?
  • What's the narrative arc? (hook → demo → proof → verdict? or something different?)
  • What's the rhythm — fast cuts or lingering shots? How long does each beat last?
  • Are there silent beats or is it all dialogue?
  • **15-second compression question:** If you had to capture this video's entire feel in just 3 beats and 2-3 spoken lines, which moments would you keep?

Camera & framing

  • What's the primary filming perspective? (selfie, propped phone, someone else filming, screen recording, etc.)
  • How does framing change between beats? (tighter, wider, different angle, same angle throughout)
  • Is there a signature camera move or framing choice that defines this style?

Edit style

  • Jump cuts between takes? Continuous shot? Time-lapse? Split screen?
  • How do transitions work?
Read more
Ships witharcads-claude-code

Create AI marketing videos and images using your Arcads account, powered by AI agents in Claude Code or Cursor.

Get the whole plugin
Stats
1,580
Stars
380
Forks
Active
Maintenance
Python
Language
MIT
License
16d ago
Last commit
6mo ago
Created
1d ago
Added

Repo: krusemediallc/arcads-claude-code

Other skills on arcads-claude-code.