# Space Video Edit

> 口播视频剪辑，两阶段——(1) 剪口播：转写→识别口误/语气词/静音/重复/卡顿/残句→生成审核页→用户确认后剪出干净视频→重转写并 AI 校对字幕；(2) 成片：把剪后视频+字幕+素材串成分镜、时间轴预览、导出最终 MP4。当用户说「剪这条口播」「删掉口误」「处理录屏素材」「口播成片」「做时间轴」「导出竖屏视频」「videocut」时触发。

- Skill: `spacezephyr/space-video-edit` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add spacezephyr/space-video-edit`
- Raw SKILL.md: https://api.skillmd.com/api/skills/spacezephyr/space-video-edit/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: spacezephyr (https://skillmd.com/u/spacezephyr)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/spacezephyr/space-video-edit

---


# space-video-edit · 口播剪辑与成片

口播剪辑分两步，别混在一起：**先剪出一条干净的（剪口播），再包装成成片（成片）。**

## 阶段一：剪口播（出干净素材）

目标：把一条原始录屏，剪成没有口误、卡顿、废话的 `source_cut.mp4` + 校对过的 `subtitles.srt`。

### 流程

```text
原视频 → ①转录(带时间词级) → ②识别删除候选 → ③生成审核网页
      → 用户确认删哪里 → ④ffmpeg 剪出新视频
      → ⑤基于剪后视频重新转写 → ⑥AI 校对字幕 → 输出
```

字幕**必须基于剪后视频重新转写再校对**，不能沿用原视频字幕，也不能拿转写初稿当最终字幕。

### 识别哪些该删（检测器）

按 `references/删除检测规则.md` 逐类扫描：静音段、语气词、连续语气词、卡顿词、逐字重复、残句、重说纠正。

### 怎么删（两条铁律）

1. **删前保后**：后说的通常更完整 → 删前面的口误/残句/重复第一次，保后面完整的。详见 `references/删前保后.md`。
2. **风险分层复核**：「删字」安全、「删意思」危险。复核只砸在高风险处（整句删除、开头撞结尾岔、长重复），低风险交末端人工审核页兜底。详见 `references/删除风险分层.md`。

### 剪切执行

标记确认后，用 `scripts/cut_by_ranges.sh` 按「保留区间」无损拼接（避免逐段删的误差累积）：

```bash
bash scripts/cut_by_ranges.sh 原视频.mp4 keep_ranges.json source_cut.mp4
```

### 产出

```text
output/YYYY-MM-DD_视频名/
├── 剪口播/1_转录/{audio.mp3, words.json}
├── 剪口播/2_分析/{readable.txt, 口误分析.md, auto_selected.json}
├── 剪口播/3_审核/review.html
├── source_cut.mp4
└── subtitles.srt   # 剪后重转写 + AI 校对
```

## 阶段二：口播成片

把 `source_cut.mp4 + subtitles.srt + 素材` 做成完整成片。**只解决一件事：出成片。** 比例和动画风格读用户配置。

```text
输入(剪后视频+字幕+素材)
  → ① 分镜稿：概念分段 + 每段类型判定 + 画面来源(原视频/截图/HTML/B-roll)
  → ② 时间线预览：画面与口播逐秒对齐（HTML 预览页）
  → ③ 合成：按配置比例导出 MP4
  → ④ 验收：ffprobe 检查时长/分辨率 + 抽关键帧核对
```

### 用户配置

```json
{ "aspectRatio": "3:4", "animationStyle": "极简深色" }
```

每次先读配置，决定成片比例和动画风格。B-roll/动画画面本身交 `space-video-broll` 生成，本阶段只负责**对齐和合成**。

## 交接

- 上游：`space-video-script` 的 `script.md`（分镜依据）、录制的原视频
- 平行：B-roll 找 `space-video-broll`，字幕精修找 `space-video-subtitle`
- 下游：成片 → `space-video-cover` 出封面

## 依赖

`ffmpeg` / `ffprobe`、`node`（跑审核页/预览页）、一个 ASR 后端（转写与重转写）。

## 核心原则

- **删前保后** > 一切子规则
- **删字安全，删意思危险**：复核按风险投放，不铺满
- **剪口播和成片分开**：先出干净素材，再谈包装
- **一切可回看**：审核页让人一眼看到删哪、成片前时间轴对齐

