mcpField
A
analyze-video-editing

analyze-video-editing

github.com/gitethanwoo创意与媒体384 次安装13 周前更新
代码仓库

关于 analyze-video-editing

用于拆解成片视频的编辑分析技能,将画面、声音、字幕和结构结合起来考察,适合视频创作者与剪辑人员。它提供从证据整理到可复用剪辑原则的分析流程。

主要功能

  1. 01分析镜头、声音、字幕与结构
  2. 02生成时间线和代表帧
  3. 03区分测量、观察与解读
  4. 04提炼可迁移的剪辑原则

适用场景

  1. 01分析视频开场的节奏与吸引力
  2. 02检查音乐、对白和画面的衔接
  3. 03总结整部影片的剪辑规律

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/gitethanwoo/video-editing --skill analyze-video-editing

安装后在 Claude Code 中输入/analyze-video-editing确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
audio-and-timing.md
editorial-analysis.md
scripts/
audio_listener.py
video_analyzer.py
tests/
smoke_test.py

详细介绍

分析视频剪辑

研究成片如何营造注意力、情绪和节奏。将影片视为由画面、声音、对白、文字和结构同步构成的整体,而不只是剪辑列表。

将 SKILL_DIR 设置为包含此文件的绝对目录。用户希望将分析所得创意落实到剪辑中时,请使用相邻的 video-editing 技能。

从可检查的素材开始

对于本地文件:

uv run "$SKILL_DIR/scripts/video_analyzer.py" analyze \
  /path/to/video.mp4 \
  --work-dir /path/to/analysis \
  --subtitles /path/to/captions.vtt

对于公共 URL,先检查下载器的实际元数据内容,再选择格式。不要猜测字段或流是否可用:

uvx --from yt-dlp yt-dlp --dump-single-json --no-playlist URL > source.json
uvx --from yt-dlp yt-dlp --no-playlist \
  -f 'bv*[height<=1080]+ba/b[height<=1080]' \
  --merge-output-format mp4 -o 'source.%(ext)s' URL

如果有字幕,请下载。如果下载权限或网站访问情况不明确,请向用户索取本地副本。

如果影片较长,请先分析一段有代表性的范围:

uv run "$SKILL_DIR/scripts/video_analyzer.py" analyze source.mp4 \
  --work-dir analysis-first-three-minutes --start 0 --end 180 \
  --subtitles source.en.vtt --ocr

脚本会写入:

  • analysis.json:探测数据、镜头边界、黑场和静音区间、音频电平、节拍估算、转录提示、运动估算和 OCR 候选结果;
  • timeline.md:精简的证据表;
  • contact-sheet.jpg:所选范围内的视觉节奏;
  • frames/:具有代表性的镜头画面;
  • strips/:主要剪切点、黑场区间和其他事件附近的密集画面。

场景检测、光流分析、节拍跟踪和 OCR 都是候选生成工具。它们可以减少逐帧浏览,但不能取代观看和剪辑判断。

当声音设计、音乐连续性或音效很重要时,将语义聆听与信号证据结合起来:

python3 "$SKILL_DIR/scripts/audio_listener.py" \
  source.mp4 \
  --work-dir analysis/audio-movement \
  --start 60 --end 172 --mode movement

此可选命令会提取原始音频、生成频谱图、测量半秒响度窗口,并且除非提供 --prepare-only,否则会请求 Gemini 生成剪辑声音分析。它会从环境变量中读取 GEMINI_API_KEY,绝不接受命令行参数中的凭据。使用 --mode transition 可对剪切点、声音中断、黑场区间或疑似淡出前后的内容进行重点高灵敏度分析。

在接受模型对安静片段的分类之前,请阅读 references/audio-and-timing.md。

分三层构建分析

明确标注以下类别:

  1. 测量结果: 时间戳、镜头时长、硬切分数、黑帧、静音、音频电平、检测到的节拍、转录文字、OCR 边界框。
  2. 观察结果: 构图、主体、摄影机行为、灯光、镜头观感、文字处理、表演、看似采用的 B-roll 或访谈模式。
  3. 解读: 紧张感、释放感、强调、对比、叙事功能,或某种并置为何有效。

切勿将运动分类器或音乐估算结果当作确定事实。属于推断时,请使用“看起来是手持拍摄”或“可能是音乐重新进入”之类的表述。

分析同步的各个层面

对于每个重要节拍,请思考:

  • 画面: 展示了什么?剪切点处发生了什么变化?画面是远景、中景、近景、插入镜头还是抽象画面?
  • 摄影机: 静止、固定、手持、稳定器跟拍、摇摄、俯仰、推进、拉远、拉焦,还是固定画面内的主体运动?
  • 剪辑: 硬切、匹配剪辑、跳切、淡入黑场、淡出、叠化、变速、蒙太奇,还是异常长的停留镜头?
  • 对白: 此处出现了哪句台词?下一幅画面是直观呈现、对比、反应,还是情绪上的呼应?
  • 声音: 对白、环境底噪、环境音、音效、配乐、节奏、静音。视觉剪辑前后,有什么声音进入、退出或音量发生变化?
  • 文字: 字幕、章节标题、片尾字幕、标签还是图形母题?记录其位置、大小、颜色、字母大小写形式、持续时间、出现方式,以及它是遮挡还是补充画面。
  • 功能: 吸引注意、升级、交代背景、重置、提出论点、提供证据、介绍角色、蒙太奇、转场还是收束?

请阅读 references/editorial-analysis.md,了解分析报告用语;阅读 references/audio-and-timing.md,了解声音驱动的分析方法。

从两个尺度进行报告

创建以下两项:

  • 针对信息量最大的片段制作微观时间线,通常记录前 60–180 秒内每个有意义的变化;
  • 为整部影片制作宏观语法:反复出现的镜头类型、平均镜头时长、访谈/B-roll 模式、图形系统、音乐段落、章节重置和节奏升级策略。

一个实用的合成行示例如下:

01:03.875–01:06.167 | hard cut | handheld exterior insert |
score re-enters and beat becomes explicit | large chapter title fills frame |
turns a reflective line into a formal chapter launch

避免在文字说明中制造虚假的精确感。在证据表中使用精确到帧的数字,在说明中则使用易读的 mm:ss 时间戳。

将分析转化为可复用的经验

提炼原则,而非模仿。对于每种手法,请说明:

  • 它解决了什么观众问题;
  • 它生效所需的前提条件;
  • 它的代价或风险;
  • 一种将它改编到不同主题中的方法。

示例:“这里使用四秒的淡入黑场奏效,是因为开场段落已积累了紧张感,而持续的环境声又避免了重置让人觉得视频已经结束。”

如果用户想应用分析结果,请将证据和选定的原则交给 find-broll 技能,用于寻找插入镜头素材;然后交给 video-editing 进行制作。不要将参考影片的精确时间、字体或转场设为默认值。

质量标准

  • 亲自检查有代表性的帧和事件条带。
  • 如果措辞会影响剪辑,请对照画面核实转录内容。
  • 检查由闪光、大标题或镜头快速摇动造成的误判剪切。
  • 区分源视频字幕与平台字幕。
  • 仅在证据支持的精度范围内描述声音。
  • 优先通过长上下文语义聆听确认提示音的身份,然后在转场附近进行针对性检查。
  • 对照频谱图和响度曲线,核实所谓的静音、环境声、音乐结尾和淡出。
  • 报告中提及公开来源时,请注明该来源。
  • 不要再分发下载的参考媒体。

评论

支持 Markdown