MV production standard — end-to-end music video creation workflow
Scanned 9/5/2026
Install to Claude Code
npx -y skills add aAAaqwq/AGI-Super-Skills --skill mv-production-standard --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Mv Production Standard?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/aaaaqwq-mv-production-standard)More formats (shields.io, HTML) on the badges page.
---
name: mv-production-standard
description: MV production standard — end-to-end music video creation workflow
---
# MV Production Standard Skill
> AI MV 制作标准流程 — 每一步都有明确产出,不允许跳步。
## 触发条件
用户要求制作/生成/合成 MV、音乐视频、music video,或任何"给这首歌配视频"的需求。
---
## 铁律(违反 = P0 事故)
| # | 铁律 | 说明 |
|---|------|------|
| 1 | **音频版本** | 必须确认用户指定的版本,不许自作主张换版本。如果用户说"用那个长的",就问清楚是哪个。 |
| 2 | **视频时长** | 视频时长必须与指定音频版本一致(可略长 ≤2s,不可短)。 |
| 3 | **歌词字幕** | 必须有歌词字幕烧录,且对齐到歌曲时间轴。不允许交付无字幕的 MV。 |
| 4 | **口型对齐** | 如果有人物/歌手画面,必须做 lip-sync。不允许人物张嘴但没声音或声音不同步。 |
| 5 | **不允许假视频** | Ken Burns / 静态图推拉不算视频。如果预算/工具不允许生成真视频,必须提前告知用户并取得同意。 |
---
## 完整流程
### Phase 1: 素材确认
**目标**: 锁定所有输入素材,避免后期返工。
**步骤**:
1. **确认音频版本**
- 列出所有可用音频版本(文件名、时长、大小)
- **直接问用户**:"有 v1(270s), v2(274s), v3(236s) 三个版本,你要用哪个?"
- 等用户明确回复后再继续
- 记录选择的版本到工作日志
2. **获取歌词**
- 确认歌词来源(用户提供 / 网上查找)
- 获取带时间轴的歌词(LRC/SRT),或准备好手动打轴
- 如果没有时间轴歌词,在 Phase 3 补上
3. **确认风格与分镜需求**
- 问用户:需要什么风格?(动画/真人/混合)
- 是否有人物出镜?→ 决定是否需要 lip-sync
- 大致场景数量和主题
4. **确认输出规格**
- 分辨率(1080p / 4K)
- 格式(MP4 / MOV)
- 是否需要硬字幕 / 软字幕
**产出文件**:
```
output/{project-name}/
├── config.json # 素材确认记录(音频版本、歌词路径、输出规格)
├── audio/ # 指定版本的音频文件
└── lyrics/ # 歌词文件(纯文本 + LRC/SRT)
```
**关键检查**:
- [ ] 用户已明确指定音频版本
- [ ] 歌词文件已获取
- [ ] 是否有人物出镜已确认
---
### Phase 2: 分镜 → 视频(AI生成或实拍)
**目标**: 为每个场景生成视频素材。
**步骤**:
1. **编写分镜脚本**
- 根据歌词内容和歌曲结构划分场景
- 每个场景指定:起止时间、画面描述、运动方式、是否有人物
- 输出: `storyboard.json` 或 `storyboard.md`
2. **生成/获取视频素材**
- **AI生成**: 使用 Kling / Runway / Pika 等工具
- 每个 clip 建议 5-10s
- 有人物说话的场景标记为需要 lip-sync(Phase 6 处理)
- **实拍**: 如果用户提供实拍素材,直接使用
- ⚠️ **禁止**: 不允许用 Ken Burns(静态图推拉)冒充视频。如果用户明确同意"用图片做过渡"则可以,但必须在分镜中标注
3. **素材质量检查**
- 每个 clip 检查分辨率、时长、画面质量
- 剔除模糊、闪烁、明显错误的 clip
**产出文件**:
```
output/{project-name}/
├── storyboard.md # 分镜脚本
├── clips/ # 各场景视频片段
│ ├── scene01.mp4
│ ├── scene02.mp4
│ └── ...
└── storyboards/ # 分镜图片(如有)
```
**关键检查**:
- [ ] 所有场景都有对应的视频素材(非静态图)
- [ ] 总视频素材时长 ≥ 音频时长
- [ ] 有人物的场景已标记
---
### Phase 3: 音频分析(beat / section / 歌词时间轴)
**目标**: 分析音频结构,建立时间轴。
**步骤**:
1. **节拍分析**
- 使用 `av-sync-workflow` 或音频分析工具
- 提取 BPM、beat 时间点
- 标记歌曲段落:前奏 / 主歌 / 副歌 / 桥段 / 尾奏
- 输出: `beats.json`
2. **歌词时间轴对齐**
- 使用 `lyrics-video-sync` 工具
- 如果有 LRC 文件,解析时间轴
- 如果没有,手动/半自动打轴:听歌标记每句歌词的起止时间
- 每句歌词精确到 0.1s
- 输出: `lyrics.srt` 或 `lyrics.ass`
3. **节拍-画面映射**
- 将分镜场景对齐到歌曲段落
- 关键节拍(副歌起拍、鼓点)对应画面转场
- 输出: `sync-plan.json`(每个转场点的时间 + 对应场景)
**产出文件**:
```
output/{project-name}/
├── beats.json # 节拍时间点
├── sections.json # 歌曲段落划分
├── lyrics.srt # 带时间轴的歌词
└── sync-plan.json # 节拍-画面同步计划
```
**关键检查**:
- [ ] 歌词时间轴已对齐(听一遍确认每句歌词时间正确)
- [ ] 节拍点已提取
- [ ] 场景-段落映射已建立
---
### Phase 4: 音视频同步(卡点对齐)
**目标**: 视频片段精确对齐到歌曲节拍和段落。
**步骤**:
1. **根据 sync-plan.json 剪辑视频片段**
- 按节拍点调整每个场景的起止时间
- 副歌前的场景在鼓点处切换
- 长段落(主歌)可根据内容细分
2. **转场处理**
- 场景间使用交叉淡化(crossfade),默认 0.5-1s
- 禁止硬切(除非用户要求或艺术效果需要)
- 副歌进入时可使用更剧烈的转场(闪白、缩放)
3. **时长校准**
- 如果素材过长:减速或裁剪
- 如果素材过短:使用时间拉伸 / 补充素材
- **确保**: 总视频时长 ≥ 音频时长
4. **粗合成(无字幕)**
- 将所有剪辑后的片段拼接成时间线
- 铺上指定版本的音频
- 输出: `draft_v1.mp4`(粗剪版,不含字幕)
**产出文件**:
```
output/{project-name}/
├── timeline.json # 最终时间线(每个片段的起止时间)
├── transitions.json # 转场设置
└── video/
└── draft_v1.mp4 # 粗剪版(含音频,无字幕)
```
**关键检查**:
- [ ] 视频总时长 ≥ 音频时长(误差 <2s)
- [ ] 关键节拍有对应的画面变化
- [ ] 转场流畅,无明显硬切
- [ ] 草稿版看起来节奏感正确
---
### Phase 5: 歌词字幕(SRT/ASS + 烧录)
**目标**: 生成精确对齐的字幕并烧录到视频。
**步骤**:
1. **字幕文件准备**
- 使用 Phase 3 产出的 `lyrics.srt`
- 如果使用 ASS 格式,设置样式:
- 字体大小、颜色、描边
- 位置(底部居中或随画面调整)
- 动画效果(淡入淡出、逐字显示等)
2. **字幕时间轴校验**
- 在视频播放器中加载字幕,逐句确认对齐
- 重点检查:歌词换气处、副歌重复段落
- 修正偏移量
3. **烧录字幕到视频**
- 使用 ffmpeg 烧录:
```bash
ffmpeg -i draft_v1.mp4 \
-vf "subtitles=lyrics.ass:force_style='FontSize=24'" \
-c:a copy \
draft_v2_with_subtitles.mp4
```
- 或使用 `video-lyrics-subtitle` skill
**产出文件**:
```
output/{project-name}/
├── lyrics.ass # 带样式的字幕文件
└── video/
└── draft_v2_with_subtitles.mp4
```
**关键检查**:
- [ ] 字幕时间轴与音频精确对齐
- [ ] 字幕样式美观、可读
- [ ] 无遗漏歌词
- [ ] 烧录后视频质量无明显下降
---
### Phase 6: Lip-sync(人物口型对齐)
**目标**: 人物画面中口型与歌曲同步。
**⚠️ 仅当有人物出镜时需要此阶段。**
**步骤**:
1. **标记需要 lip-sync 的场景**
- 从 storyboard 中找出有人物说话/唱歌的片段
- 确认这些片段的时间范围
2. **使用 digital-human-api 进行口型对齐**
- 输入: 视频片段 + 对应时间段的音频
- 生成: 口型对齐后的视频片段
- 如果工具不可用,使用替代方案:
- Wav2Lip / SadTalker 等开源工具
- 或重新用 AI 视频生成工具生成带口型的片段
3. **替换原片段**
- 将 lip-sync 后的片段替换回时间线
- 检查拼接处是否平滑
**产出文件**:
```
output/{project-name}/
├── clips_synced/ # 口型对齐后的片段
│ ├── scene08_synced.mp4
│ └── scene09_synced.mp4
└── video/
└── draft_v3_lipsynced.mp4
```
**关键检查**:
- [ ] 人物口型与歌词匹配
- [ ] 口型过渡自然(不卡顿、不扭曲)
- [ ] 替换后时间线无偏移
---
### Phase 7: 最终合成 + 质量检查
**目标**: 输出最终 MV,通过全部质量检查。
**步骤**:
1. **最终合成**
- 整合所有阶段产出
- 确认音频为用户指定版本
- 添加片头/片尾(如需要)
- 输出: `final_mv.mp4`
2. **质量检查清单**(全部通过才能交付):
| # | 检查项 | 通过标准 |
|---|--------|----------|
| 1 | 音频版本 | = 用户指定版本(文件名、时长都匹配) |
| 2 | 视频时长 | ≥ 音频时长,误差 <2s |
| 3 | 歌词字幕 | 已烧录,时间轴正确,无遗漏 |
| 4 | 口型对齐 | 有人物场景口型已同步(如适用) |
| 5 | 转场 | 场景切换流畅,无硬切 |
| 6 | 音画同步 | 关键节拍有对应画面变化 |
| 7 | 画质 | 无明显压缩伪影,分辨率符合要求 |
| 8 | 总体观感 | 连续看完一遍,主观感受流畅 |
3. **生成交付包**
```
output/{project-name}/deliver/
├── final_mv.mp4 # 最终MV
├── lyrics.srt # 外挂字幕(可选)
├── lyrics.ass # ASS字幕(可选)
├── config.json # 素材配置记录
└── README.md # 制作说明
```
**产出文件**:
```
output/{project-name}/deliver/
└── final_mv.mp4 # 最终交付文件
```
---
## 目录结构标准
```
output/{project-name}/
├── config.json # Phase 1: 素材确认
├── audio/ # Phase 1: 音频文件
│ └── {version}.mp3
├── lyrics/ # Phase 1: 歌词
│ ├── lyrics.txt
│ └── lyrics.srt
├── storyboard.md # Phase 2: 分镜
├── clips/ # Phase 2: 视频素材
├── beats.json # Phase 3: 节拍
├── sections.json # Phase 3: 段落
├── sync-plan.json # Phase 3: 同步计划
├── timeline.json # Phase 4: 时间线
├── transitions.json # Phase 4: 转场
├── clips_synced/ # Phase 6: 口型对齐片段
├── video/ # 各阶段视频产出
│ ├── draft_v1.mp4 # Phase 4: 粗剪
│ ├── draft_v2_with_subtitles.mp4 # Phase 5: 加字幕
│ ├── draft_v3_lipsynced.mp4 # Phase 6: 加口型
│ └── final_mv.mp4 # Phase 7: 最终版
└── deliver/ # 交付包
└── final_mv.mp4
```
---
## 常见问题
### Q: 用户没有指定音频版本怎么办?
**A: 停下来问。** 列出所有版本和时长,等用户回复。绝不自作主张。
### Q: 工具不足以完成某个 Phase 怎么办?
**A: 诚实告知用户。** 说明缺少什么工具、有什么替代方案、需要多少额外时间/成本。不要偷工减料。
### Q: 时间紧迫,可以跳过某些步骤吗?
**A: 可以,但必须告知用户跳过了什么、影响是什么。** 让用户做权衡决策。默认不可跳过 Phase 1(素材确认)和 Phase 7(质量检查)。
### Q: Ken Burns 效果什么时候可以用?
**A: 仅当用户明确同意用图片过渡时使用。** 且必须在分镜中标注为"静态图过渡"。不能把静态图当真视频交付。
---
## 相关 Skills
| Skill | 用途 |
|-------|------|
| `av-sync-workflow` | 音视频同步、节拍对齐 |
| `lyrics-video-sync` | 歌词时间轴对齐 |
| `video-lyrics-subtitle` | 字幕烧录 |
| `digital-human-api` | Lip-sync 口型对齐 |
| `mv-generator` | MV 管线集成 |
---
## 版本历史
| 版本 | 日期 | 说明 |
|------|------|------|
| 1.0 | 2026-04-12 | 初始版本,基于《樱花落尽时》MV 制作教训总结 |
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!