Token导航 LogoToken导航TokenDH.com
前端设计只读github未标认证来源可访问许可证需确认审计通过

video-scene-analyzer视频场景分析仪

Agent Skill

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。它适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。使用时需要确认分辨率、时长、素材路径和导出格式;涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。

总安装

605

周安装

26

GitHub Stars

公开资料未说明

下载量

212
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:video-scene-analyzer(视频场景分析仪)
来源仓库:https://github.com/soheik/agent-skills
仓库路径:skills/video-scene-analyzer
安装命令:
npx skills add https://github.com/soheik/agent-skills --skill video-scene-analyzer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/soheik/agent-skills --skill video-scene-analyzer

简介

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。

  • 适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。
  • 使用时需要确认分辨率、时长、素材路径和导出格式。
  • 涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。
  • 安装方式:github,命令:npx skills add https://github.com/soheik/agent-skills --skill video-scene-analyzer

SKILL.md

Video Scene Analyzer

Detect scene boundaries in video files and generate structured JSON with content summaries, production tags, and a visual asset library per scene.

Prerequisites

Requires ffmpeg and ffprobe. Verify:

ffmpeg -version && ffprobe -version

If missing, inform the user and stop.

This skill bundles its own videx script at scripts/videx (relative to SKILL.md). Resolve the full path:

VIDEX="$(dirname "$(realpath "<path-to-SKILL.md>")")/scripts/videx"

Workflow Overview

Two-pass process:

  1. Pass 1 -- Overview: Extract low-res frames, read them all, identify scene boundaries
  2. Pass 2 -- Deep-dive: Extract high-res frames per scene, generate detailed metadata
  3. Output: Write analysis.json + conversation summary

Pass 1: Overview Scan

Step 1: Get video metadata

ffprobe -v error -show_entries format=duration,size -show_entries stream=codec_name,width,height,r_frame_rate -of default=noprint_wrappers=1 <video>

Record duration, resolution, fps for the output JSON.

Step 2: Extract overview frames

Choose interval based on duration:

DurationIntervalCommand
< 5 min2s$VIDEX overview <video> 2 320 0.5
5-30 min5s$VIDEX overview <video> 5 320 0.5
> 30 min10s$VIDEX overview <video> 10 320 0.5

Use triplet=0.5 (wider spread) to make transitions visible.

Step 3: Read all overview frames

Read every _b (center) frame chronologically using the Read tool. Read in batches of 20-30 if many frames.

For timestamps where the _b frame looks like a transition (blur, blend, fade), also read the _a and _c frames.

Step 4: Detect scene boundaries

Compare consecutive _b frames. A scene boundary exists when:

  • Hard cut: Completely different content between consecutive frames
  • Dissolve/fade: Frame shows blending or fade to/from black/white
  • Major change: Same subject but clearly different setting, angle, or composition

Heuristic: when uncertain, prefer splitting. Users can merge; they cannot split what was missed.

Record for each boundary:

  • Approximate timestamp (midpoint between the two sample points)
  • Transition type (cut, dissolve, fade-to-black, fade-from-black, fade-to-white, fade-from-white, wipe)

The first frame always starts Scene 1. The last sample point ends the final scene (use video duration).

Step 5: Report scene list

Show the user a scene list before proceeding:

Scene 1: 0:00 - 0:04 (cut)
Scene 2: 0:04 - 0:07 (dissolve)
...

Ask if they want to adjust boundaries or proceed.

Pass 2: Scene Deep-Dive

Step 6: Extract scene frames

For each scene, extract at 1280px:

$VIDEX range <video> <start>-<end> --triplet=0.2

Short scenes (< 2s): add --fps=5 Long scenes (> 30s): default 2fps is fine.

Step 7: Analyze each scene

Read all extracted frames for the scene. Determine:

Content summary: 2-4 sentences. Subjects, actions, setting, props, visible text.

Production tags:

TagValues
camera_angleeye-level, low-angle, high-angle, bird's-eye, dutch-angle, over-the-shoulder, pov
shot_sizeextreme-wide, wide, medium-wide, medium, medium-close-up, close-up, extreme-close-up
camera_movementstatic, pan-left, pan-right, tilt-up, tilt-down, zoom-in, zoom-out, dolly-in, dolly-out, tracking, handheld, crane, steadicam
color_tonewarm, cool, neutral, desaturated, high-contrast, low-contrast, monochrome, neon, pastel, earth-tones
lightingnatural, artificial, high-key, low-key, backlit, side-lit, top-lit, silhouette, mixed
tempostatic, slow, moderate, fast, frenetic

Text overlay:

  • placement: none, lower-third, centered, top, full-screen, watermark
  • content: actual text visible, or null

Transitions:

  • in: how scene begins (none for first scene)
  • out: how scene ends (none for last scene)

If a tag changes mid-scene, use the dominant value and note the change in notes.

Step 7b: Build asset library

While analyzing scenes, catalog every distinct visual asset across the entire video. For each asset, record:

FieldDescription
idKebab-case unique identifier (e.g., student-summer, logo-brand)
typecharacter, background, icon, ui-screen, photo, product, logo, decoration, text-graphic, effect
labelHuman-readable one-line description with key visual traits
styleanime-illustration, flat-design, realistic-photo, 3d-render, hand-drawn, typography, mixed
appears_inArray of scene numbers where this asset appears

Guidelines:

  • Characters with costume changes get separate entries (e.g., student-summer, student-winter)
  • Same icon in multiple scenes = one entry with all scene numbers
  • Only list distinctive backgrounds (skip generic white/black)
  • label should be concise but include enough detail to identify the asset (color, pose, size, distinguishing features)

See references/schema.md for the full type reference and examples.

Step 8: Write analysis.json

Assemble the complete JSON per the schema in references/schema.md.

Write to: ./videx-out/<video-name>/analysis.json

Step 9: Conversation summary

After writing JSON, provide:

  1. Total scenes and video duration
  2. One-line summary per scene with timestamps
  3. Asset library summary (total count, type breakdown)
  4. Notable production patterns across the video

Edge Cases

  • < 10 seconds: Use 1-second interval. Single scene is valid.
  • > 1 hour: Use 10-second intervals. Read overview frames in batches.
  • Static content (slideshow/screencast): Slide changes = scene boundaries. Note camera_movement: static.
  • Ambiguous boundaries: Prefer splitting over merging.

Output Location

./videx-out/<video-name>/
├── overview/          (Pass 1)
├── range_*/           (Pass 2)
└── analysis.json      (final output)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.94%
按下载量换算74

Claude

31.21%
按下载量换算66

Cursor

20.37%
按下载量换算43

Gemini CLI

10.61%
按下载量换算22

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills