本地视频生成中文字幕
课程导读
用 Claude Code 做一个给本地视频生成中文字幕的小脚本。
一、课前准备
| 准备项 | 说明 |
|---|---|
| 转录接口 | 演示用社区免费接口;把 curl 示例提供给 Claude Code 即可 |
| DeepSeek API Key | 翻译步骤会用到 |
| 测试视频 | 至少一个英文视频;批量测试时再准备一个文件夹 |
DeepSeek 还没有 Key 的话:
DeepSeek API Key 管理关于 API Key
开发阶段需要把 Key 提供给 Claude Code,它才能完成接入;不要写进源码或提交到仓库。Claude Code 一般会建议写到 .env。
换别的转录服务时,做法一样:找到可用接口,把文档或 curl 示例粘贴给 Claude Code。
二、开始开发
- 新建项目文件夹
- 用 Warp 进入项目目录
- 执行
git init初始化仓库 - 启动 Claude Code
- 切换到 Plan 模式
三、Plan 模式里描述需求
示例提示词:
text
帮我开发一个脚本,给本地视频生成中文字幕。
转录接口使用这个 curl 示例:
curl 'https://api.elevenlabs.io/v1/speech-to-text?allow_unauthenticated=1' \
-H 'Origin: https://elevenlabs.io' \
-H 'Referer: https://elevenlabs.io/' \
-F 'model_id=scribe_v1' \
-F 'diarize=true' \
-F 'file=@audio.mp4;type=video/mp4'
翻译使用 deepseek-v4-flash,API Key 是:你的 DeepSeek API Key
制定计划的时候可以使用 Context7 和 DeepWiki 这两个 MCP。四、确认开发计划
计划里通常包含:
| 步骤 | 说明 |
|---|---|
| 转录 | 用提供的接口把视频转成字幕 |
| 翻译 | 用 DeepSeek 翻译成中文 |
| 输出 | 生成 SRT 字幕文件 |
若计划里没提到 .env,开发前可补一句:
text
请把 DeepSeek API Key 写到 .env 里,不要写进代码文件。确认无误后,直接让它开始开发。
五、测试
开发完成后让 Claude Code 代跑测试即可。
| 文件 | 作用 |
|---|---|
| JSON | 转录原始数据,含起止时间;调试用 |
| SRT | 标准字幕文件,日常使用加载这个 |
六、新增批量处理
示例提示词:
text
我想新增批量处理的功能,比如我选中一个文件夹之后,它可以将文件夹内的所有视频批量进行处理。七、Git 存档
本课演示:批量处理完成后 做第一次提交,可视化界面完成后 做第二次提交。
text
/commit-commands:commit.gitignore 里通常排除:.env、测试视频、生成的字幕和 JSON。
若首次提交报错且与项目代码无关,常见原因是 commit-commands 插件 在仓库尚无提交记录时的限制;把报错发给 Claude Code 处理即可。
八、开发可视化界面
示例提示词:
text
帮我创建一个可视化的界面,这样操作起来比较方便。支持选择单个文件,也可以选择文件夹。| 方案 | 特点 |
|---|---|
| 网页端界面 | 更美观,浏览器使用 |
| 桌面窗口 | 不用开浏览器,界面相对简单 |
