# Manim Video Teacher

> 专注于使用 Manim 生成动画教学视频的完整流程与专业建议。适用于用户用中文提示语让 Codex 生成脚本、分镜、Manim 代码、渲染命令或优化教学视频质量与节奏，并输出 MP4。 Use when this capability is needed.

- Skill: `tomevault-io/manim-video-teacher` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/manim-video-teacher`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/manim-video-teacher/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/manim-video-teacher

---


# Manim 动画教学视频

## 快速目标

用用户的中文提示语，产出可执行的 Manim 方案：脚本/分镜/代码/渲染命令，并解释关键教学设计选择。

## 先收集的最少信息

- 主题与受众：讲什么、给谁看
- 时长与节奏：总时长、快慢、是否分章节
- 画面风格：黑板风、简洁线性、是否强调配色
- 数学/代码内容：公式、伪代码或示例数据

若用户未提供，先做合理默认并声明假设。

## 工作流程

1. 把用户提示语改写成教学脚本（结构化段落：引入-核心-总结）。
2. 为每段脚本给出分镜（画面目标、关键动画、旁白要点）。
3. 设计视觉语言（颜色/字号/对齐/高亮规则），保持一致。
4. 生成 Manim 代码（Scene 结构清晰、变量命名明确）。
5. 给出渲染命令与参数建议（分辨率、fps、质量）。
6. 用脚本生成旁白音频，并可同步产出字幕（SRT）。
7. 用脚本合成视频与音频，必要时把字幕嵌入输出。
8. 用脚本生成单独封面图（适合传播/分享平台）。
9. 简要解释关键教学设计选择（为何这样分镜/过渡/强调）。

## 教学脚本模板

用短句、可口播的节奏：

1. 引入：问题/现象/动机（1-2 句）
2. 定义：核心概念（1-3 句）
3. 机制：关键步骤或推导（分 2-5 步）
4. 示例：用 1 个具体例子验证
5. 总结：一句话回扣重点

## 分镜粒度建议

- 15-30 秒一个镜头块，避免信息密度过高
- 每一步推导或关键结论单独成镜头
- 每个镜头最多 1-2 个主视觉对象

## Manim 代码约定

- 使用 `Scene` 或 `MovingCameraScene`，尽量保持单场景可复用。
- 把复杂动画拆成小函数（如 `show_definition()`）。
- 用 `VGroup` 组织元素，统一对齐与间距。
- 用 `FadeIn/FadeOut/Transform/ReplacementTransform` 传达逻辑过渡。
- 文本尽量用 `Tex/MathTex` 保持数学排版一致，纯中文说明用 `Text`。

## 默认技术参数

- 分辨率：1920x1080
- fps：30
- 渲染质量：`-qh` 作为默认
- 输出：MP4

## 视觉与节奏默认值

- 主色：蓝色或橙色二选一，保持一致
- 强调色：亮黄或红色，仅用于关键结论
- 留白：屏幕边缘留 10-15% 安全区
- 口播节奏：每分钟 120-150 字

## 脚本优先

优先使用 `scripts/` 下的脚本完成语音生成、合成与封面，不要求用户手写命令。

可用脚本：

- `scripts/tts_generate.py`：把旁白文本转为音频（edge-tts），可用 `--subs-output subs.srt` 输出字幕
- `scripts/concat_audio.py`：合并多段旁白（ffmpeg concat）
- `scripts/mux_av.py`：合成视频与音频（ffmpeg），可用 `--subs subs.srt` 嵌入字幕
- `scripts/make_cover.py`：生成 16:9 封面图（Pillow）
- `scripts/pipeline.py`：一键执行语音、合成与封面生成
  - 可选参数：`--dry-run` 输出命令不执行，`--verbose` 显示执行命令，`--log-file` 记录命令列表（默认覆盖），`--append-log` 追加记录
  - 字幕参数：`--subs-output subs.srt`（TTS 生成字幕），`--subs subs.srt`（使用已有字幕）

若脚本报缺依赖，提示用户安装对应依赖即可（edge-tts、ffmpeg、Pillow）。

示例（推荐）：

```bash
python scripts/pipeline.py \\
  --video manim.mp4 \\
  --tts-file narration.txt \\
  --subs-output subs.srt \\
  --cover-title "二次函数顶点式" \\
  --cover-subtitle "60 秒掌握" \\
  --output output.mp4
```

## 封面图规格与建议

- 比例：16:9
- 尺寸：1920x1080（与正片一致）
- 文字层级：标题 1 行 + 副标题 1 行（可选）
- 信息结构：左大标题，右侧示意图或关键公式
- 颜色：主色 + 强调色，避免超过 3 种主色
- 导出：PNG，保证清晰度

## 用户可能的触发示例（中文）

- “用 Manim 做一个 60 秒讲解二次函数顶点式的视频。”
- “做一个教学动画解释矩阵乘法，画面简洁。”
- “把这个概念讲给高中生，生成 Manim 代码和渲染命令。”

## 输出格式建议

- 先给脚本与分镜
- 再给 Manim 代码（可直接运行）
- 提供 `scripts/pipeline.py` 的使用方式（优先）
- 如需分段合成或自定义流程，给出对应脚本用法（`tts_generate.py`/`concat_audio.py`/`mux_av.py`）
- 提供封面图设计建议与导出规格（对应 `make_cover.py`）
- 最后给渲染命令与参数说明（Manim）
- 如果用户要旁白，附带配音台词与字幕（SRT）

## 常见优化点

- 重要概念用颜色/加粗/放大突出
- 动画节奏宁可慢一点，留白便于理解
- 公式推导分步出现，避免一次性堆叠
- 使用 `Wait()` 给观众思考时间

## 质量检查清单

- 逻辑顺序明确，镜头之间过渡自然
- 文字不过密，屏幕无明显拥挤
- 关键步骤已用颜色或动画强调
- 渲染参数与目标平台匹配

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/lispking) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-13 -->

