agentsclimarketplace

Video analysis

Skill khanhhuyenngo985-sys/character-scene-design-skills/skills/video-analysis

对视频进行结构化拉片分析,提取镜头语言、色调、节奏、叙事结构等创作参数,存入案例库并优化提示词矩阵。触发词:「拉片」「分析视频」「视频分析」「拆解这个视频」「学习这个广告」「提取创作参数」。From its SKILL.md

Install
npx -y skills add khanhhuyenngo985-sys/character-scene-design-skills --skill video-analysis

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

9.5 KB, ~3.6k tokens by cl100k_base, as published. Nobody here has run it

拉片分析技能

TL;DR

视频输入 → 启动检查点确认 → 6维度拆解 → 案例归档 → 反馈优化提示词矩阵

对视频进行结构化拆解,提取创作参数,存入案例库,持续优化提示词矩阵和智能体系统。

启动检查点

激活后先确认:

  1. 视频来源:本地文件 / URL / 截图描述?
  2. 分析目的:学习竞品 / 建案例库 / 提取提示词参数?
  3. 输出去向:存入案例库 / 直接用于提示词生成?

确认后再开始拆解,避免方向偏差。

核心工作流

视频输入 → 视觉拆解 → 参数提取 → 案例归档 → 反馈优化
                              ↓
              ┌───────────────┼───────────────┐
              ↓               ↓               ↓
         prompt-matrix   行业技能      导演风格库

拆解维度

1. 镜头语言 (Visual)

维度提取内容记录格式
景别全景/中景/近景/特写序列全景→中景→特写
运镜推/拉/摇/移/跟/固定缓慢推近, 手持微动
角度俯/仰/平/斜/鸟瞰低角度仰拍
构图负空间/三分法/对称/前景遮挡60%负空间, 前景遮挡
画幅16:9/2.35:1/9:16/1:12.35:1 Cinemascope

2. 光影色调 (Cinematic)

维度提取内容记录格式
色调主色/辅助色/点缀色占比黑白60% 金铜20% 苍青20%
光源类型自然光/人工光/混合侧逆光, 单一强光源
光影氛围明亮/暗调/高对比/柔和高对比, 戏剧性光影
质感胶片/数字/颗粒/锐度16mm胶片, 轻微颗粒, 过曝1/3档

3. 叙事结构 (Narrative)

维度提取内容记录格式
时长总时长15s
镜头数镜头切分数量4个镜头
时间戳每镜头起止时间[00:00-00:04]
节奏长镜头/快切比例长镜头70% 快切30%
叙事阶段引入/发展/高潮/结尾4幕结构

4. 声音设计 (Audio)

维度提取内容记录格式
BGM风格钢琴/电子/弦乐/无氛围电子, 极简钢琴
音量极轻/正常/渐强音量极轻
音效环境音/特效音/静音极简环境音(风声)
人声有/无/画外音无对话, 纯视觉叙事

5. 情绪表达 (Emotion)

维度提取内容记录格式
主导情绪孤独/温暖/紧张/平静/强烈孤独疏离感
情绪曲线起承转合引入→探索→高潮→落版
克制程度极度克制/适度/外放长镜头凝视60% 静默留白30%

生成成本估算

每次分析完成后,输出基于视频时长的 API 处理成本估算:

生成成本估算(Gemini 2.5 Flash 基准):
┌─────────────────────────────────────────────────────┐
│ 时长: Xs                                            │
│ 预计 tokens: ~X,000 tokens                          │
│ 预计 API 成本: $0.00XXX                              │
│                                                     │
│ FPS 推荐:                                           │
│ - 静态内容(访谈/产品特写): 1fps                    │
│ - 运动内容(舞蹈/动作/场景): 2fps                   │
│ - 快节奏内容(混剪/转场): 4fps                     │
│                                                     │
│ 分段策略:                                           │
│ - ≤60s: 单次处理                                    │
│ - 60-180s: 建议分2段处理                            │
│ - >180s: 建议分段,每段独立分析                      │
└─────────────────────────────────────────────────────┘

Token 计算规则:

  • 视频 ~300 tokens/second @ 默认分辨率
  • 音频 ~0.5 tokens/second
  • 截帧图 ~50 tokens/帧

参考来源:claudekit/ai-multimodal token 计算方法

案例库格式

每条案例存储为JSON,存入 ~/.claude/case-library/ 目录:

{
  "case_id": "uuid",
  "source": "平台/品牌/作品名",
  "url": "视频链接或本地路径",
  "industry": "美妆护肤/金融/香水/...",
  "style_line": "高定线/通用线",
  "duration": "15s",
  "extracted_parameters": {
    "visual": {
      "shots": [
        {"timestamp": "[00:00-00:04]", "shot_type": "远景", "movement": "缓慢横移", "angle": "俯拍", "composition": "极简留白"}
      ]
    },
    "color": {
      "palette": "黑白40% 大地灰20% 冷白20% 克制金20%",
      "lighting": "自然光50% 单一强光源30% 极轻霓虹20%"
    },
    "narrative": {
      "structure": "4幕结构",
      "rhythm": "长镜头凝视60% 静默留白30% 偶尔快切10%"
    },
    "audio": {
      "bgm": "氛围电子, 钢琴+弦乐",
      "sfx": "极简, 风声"
    },
    "emotion": {
      "primary": "孤独疏离",
      "curve": "引入→探索→高潮→落版"
    }
  },
  "platform_optimization": {
    "seedance": "中文提示词, timestamp格式",
    "vidu": "风格词前置",
    "hairui": "图像转视频, 动态预期描述"
  },
  "key_takeaways": ["王家卫光影手法", "侧逆光打出发丝光效果"],
  "analysis_date": "2026-04-04",
  "analyst": "白梦客团队"
}

反馈闭环机制

案例 → prompt-matrix 优化

  1. 从案例中提取有效参数(色调/光影/节奏)
  2. 对比现有 prompt-matrix 配方
  3. 如有新组合有效,更新 prompt-matrix 技能

案例 → 行业技能优化

  1. 识别案例所属行业
  2. 检查案例与现有行业技能配方差异
  3. 如案例突破现有配方,更新行业技能版本

案例 → 导演风格库

  1. 提取导演风格特征
  2. 更新导演风格引用对照表
  3. 扩充"有效捷径"库

拆解流程

Step 1: 视频信息登记

- 记录来源平台/品牌/作品名
- 记录URL或本地路径
- 记录时长/分辨率/格式
- 记录首次观看印象(情绪关键词)

Step 2: 逐镜头拆解

- 每3-5秒一个镜头单元
- 记录景别/运镜/角度/构图
- 截图保存关键帧
- 记录时间戳

Step 3: 参数提取

- 识别色调主辅点缀比例
- 识别光源类型和方向
- 识别节奏模式
- 识别叙事结构

Step 4: 案例归档

- 生成case_id (UUID)
- 填充JSON模板
- 存入case-library/
- 更新索引文件

Step 5: 反馈分析

- 对比现有技能配方
- 识别新增或改进点
- 记录待验证假设
- 如需更新,触发技能版本升级

使用场景

screenwriter/director 使用此技能时:

  1. 收到参考视频 → 用拉片分析提取参数
  2. 对比案例库 → 找到相似案例参考
  3. 提取有效手法 → 路由到 prompt-matrix 生成提示词
  4. 验证后归档 → 案例库持续积累

输出格式

导演视角分析报告

## [作品名] 拉片分析

**基本信息**: 平台 | 品牌 | 时长 | 画幅
**第一印象**: 情绪关键词

---

### 镜头拆解

| 时间戳 | 景别 | 运镜 | 角度 | 构图 | 关键帧 |
|--------|------|------|------|------|--------|
| 00:00-00:04 | 远景 | 缓慢横移 | 俯拍 | 极简留白 | [img] |

### 色调/光影
- 色调: [主色%+辅助色%+点缀色%]
- 光源: [类型+方向+氛围]
- 质感: [胶片型号/颗粒/曝光]

### 叙事结构
- 阶段: [引入→探索→高潮→落版]
- 节奏: [长镜头%/快切%/静默%]

### 声音设计
- BGM: [风格]
- 音效: [类型]
- 人声: [有/无]

### 情绪曲线
- 主导情绪: [情绪词]
- 克制程度: [程度词]

---

### 创作参数提取

**可复用手法的关键点**:
1. [具体手法描述]
2. [具体手法描述]

**平台适配提示词**:

[Seedance中文提示词]


**案例库索引**: `case-library/[case_id].json`

案例库管理

索引文件 case-library/index.json

{
  "last_updated": "2026-04-04",
  "total_cases": 0,
  "by_industry": {
    "美妆护肤": ["case_id_1", "case_id_2"],
    "金融": ["case_id_3"]
  },
  "by_style": {
    "高定线": ["case_id_1", "case_id_3"],
    "通用线": ["case_id_2"]
  },
  "by_platform": {
    "seedance": ["case_id_1"],
    "vidu": ["case_id_2"],
    "hairui": ["case_id_3"]
  }
}

检索命令

# 按行业检索
grep -l '"industry": "美妆护肤"' ~/.claude/case-library/*.json

# 按色调检索
grep -l '"黑白.*金色' ~/.claude/case-library/*.json

# 按情绪检索
grep -l '"孤独' ~/.claude/case-library/*.json

质量检查清单

  • 视频来源信息完整
  • 时间戳与实际镜头对齐
  • 色调参数量化(百分比)
  • 光影描述具体化
  • 节奏分配有数据支撑
  • 关键帧截图已保存
  • 案例已归档至case-library
  • 反馈分析已完成
  • 如有配方更新,已触发技能版本升级

What ships with it: 1 file

274 B alongside SKILL.md

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.