视频内容总结 (Video Summarizer)
Overview
本 Skill 把任意视频 / 音频 / 会议录音变成结构化文字总结。相比 tmeet-skill(仅限腾讯会议云端转写),本技能不绑定任何会议平台或云厂商,支持三种转写来源且自动降级:
- 本地 Whisper(离线、免费、数据不出本机,需 ffmpeg + 模型)
- 阿里云百炼 Paraformer(需
DASHSCOPE_API_KEY,国内低延迟、合规友好,可直接吃本地文件——OpenAI 的国产替代) - OpenAI Whisper API(需
OPENAI_API_KEY,无需本地模型) - 外部转写文件(直接给
.txt/.srt/.vtt,跳过 ASR——也适配 tmeet 导出的转写)
流水线分为确定性阶段(抽音频 + 转写,由脚本完成)与理解阶段(生成总结,由 AI 完成),职责清晰、易维护。
When to use
- 用户说"总结这个视频 / 帮我整理这段录音 / 会议录音生成纪要"
- 用户要"把课程视频做成笔记 / 讲座要点提炼 / 访谈整理"
- 用户想"速读一个长视频 / 这个 mp4 讲了什么"
- 任何"音视频 → 结构化文字"类需求
Workflow
- 确认输入与来源:问清要总结的是视频文件、音频文件,还是已经有的转写文本。若用户手头已有转写(如 tmeet 导出的
.txt),直接走--transcript捷径。 - 运行流水线:
```bash
# 视频/音频:自动选后端转写
python scripts/summarize_video.py "会议录制.mp4" --language zh
# 指定后端
python scripts/summarize_video.py "lecture.m4a" --backend local
python scripts/summarize_video.py "interview.mp3" --backend aliyun
python scripts/summarize_video.py "interview.mp3" --backend openai
# 已有转写文件,跳过 ASR
python scripts/summarize_video.py "any.mp4" --transcript 转写.txt
``
脚本会在同目录生成<stem>_summary/,内含transcript.txt(转写全文)、transcript.json、transcript.srt(带时间戳),并打印供本技能读取的元数据 JSON。
3. **读取转写**:打开<stem>_summary/transcript.txt,结合assets/summary_template.md的章节结构。
4. **生成总结**:按模板输出<stem>_summary.md`,包含概览、章节(带时间戳)、核心要点、行动项、待澄清问题。
5. 校验:核对时间戳是否对应转写原文;行动项须有负责人与时限;不杜撰转写中不存在的信息。
依赖与配置
- ffmpeg:视频必须(提取音频)。缺省时脚本给出分系统安装命令。音频文件可免 ffmpeg。
- 本地 Whisper:
pip install faster-whisper(推荐)或openai-whisper。首次自动下载模型。 - 阿里云百炼:
pip install dashscope并设环境变量DASHSCOPE_API_KEY(与 qwen 同账户)。 - OpenAI API:
pip install openai并设环境变量OPENAI_API_KEY。 - 外部转写:无需任何依赖。
- 后端选择、语种、输出目录均通过命令行参数控制,密钥仅走环境变量。详细对照见
references/asr_backends.md。
Resources
scripts/summarize_video.py:主流水线(参数解析 / 音频提取 / 调用转写 / 落盘)。scripts/asr.py:Transcript数据类 + 多后端转写(local / aliyun / openai),可插拔、自动降级。assets/summary_template.md:总结 Markdown 模板(概览/章节/要点/行动项/待澄清)。references/asr_backends.md:各转写后端的能力/成本/配置对照与选型建议。references/engineering_notes.md:架构决策、代码质量要点、团队代码评审清单(用于提升团队工程水平)。
降级与稳健性(容错设计)
- 未装 ffmpeg → 视频无法提取音频,但音频文件 / 外部转写仍可继续;脚本给出明确安装指引而非崩溃。
- 本地 Whisper 未装 → 自动尝试阿里云百炼;仍未配置 → 尝试 OpenAI;都没有 → 提示用
--transcript直读。 - 任一后端抛错不致命,
auto模式会继续尝试下一个。 - 这是本 Skill 的工程稳健性设计,发布时应在说明中体现。
输出规范
总结须基于转写原文,不得虚构要点或行动项。结构遵循模板:概览、按时间/主题的章节(带时间戳)、3-8 条核心要点、明确的行动项(负责人+时限)、以及仍待澄清的问题。若转写质量差(噪音大/语种识别错),明确提示用户重传或换后端。