Subtitle Translator:批量字幕翻译工具
近年来,随着在线视频的兴起,国外热门影视作品的翻译多由视频平台完成,而原本活跃的字幕组则逐渐淡出人们的视野。然而,对于冷门视频和自制视频的字幕需求却未能得到有效满足,导致未配字幕的视频数量持续增加。为解决这一问题,可以用 Whisper 工具为这些生肉视频自动生成字幕,并通过翻译接口将其翻译成中文。具体操作步骤可参考文章:找不到字幕?Whisper 让不懂外语的你也能看懂日剧。
针对市面上字幕翻译工具存在的翻译速度慢、不支持批量处理、需人工干预等问题,我开发了一款免费且功能全面的字幕翻译工具——Subtitle Translator。该工具支持 .srt
、.ass
、.vtt
多种字幕格式,并具备秒级翻译速度,大幅提高翻译效率。我已成功转录超过 500 个视频,翻译后的字幕文件可在 whisper-subtitles 查看。
特色功能

- 秒级翻译:利用字幕文本的分块压缩和并行处理技术,实现 1 秒翻译一集电视剧(GTX 接口稍慢)。
- 批量翻译:支持一次性处理上百份字幕文件,极大提升翻译效率。
- 翻译缓存:自动本地缓存翻译结果,避免重复调用,节省时间和 API 费用。
- 格式兼容:自动匹配主流字幕格式(.srt / .ass / .vtt),导出文件与原文件名一致,无需手动调整。
- 字幕提取:支持提取字幕文本,方便后续用于 AI 总结、二次创作等应用场景。
- 多接口选择:提供 3 种免费翻译方式、3 种商业级翻译 API,以及 5 种 AI LLM(大模型)接口,满足不同需求。
- 多语言支持与国际化:支持 35 种主流语言(英语、中文、日语、韩语、法语、德语、西班牙语等),还可将同一字幕文件同时翻译成多种语言,满足国际化需求。
Subtitle Translator 提供了丰富的参数选项,以适应不同用户的需求。以下是各项参数的详细说明:
翻译 API
Subtitle Translator 支持 5 种翻译 API 和 5 种 LLM(大语言模型)接口,用户可根据需求选择合适的翻译方式:
翻译 API 对比
API 类型 | 翻译质量 | 稳定性 | 适用场景 | 免费额度 |
---|---|---|---|---|
DeepL(X) | ★★★★★ | ★★★★☆ | 适合长文本,翻译更流畅 | 每月 50 万字符 |
Google Translate | ★★★★☆ | ★★★★★ | 适合 UI 界面、常见句子 | 每月 50 万字符 |
Azure Translate | ★★★★☆ | ★★★★★ | 语言支持最广泛 | 前 12 个月 每月 200 万字符 |
GTX API(免费) | ★★★☆☆ | ★★★☆☆ | 一般文本翻译 | 免费 |
GTX Web(免费) | ★★★☆☆ | ★★☆☆☆ | 适合小规模翻译 | 免费 |
- DeepL:适用于长篇文本,翻译更加流畅自然,但不支持网页端 API,需本地或服务器代理调用。
- Google Translate:翻译质量稳定,适用于短句、界面文本,支持网页端调用。
- Azure Translate:支持语言最多,适合多语言翻译需求。
- GTX API/Web:免费翻译选项,适合小规模使用,但稳定性一般。
如果对翻译速度和质量有更高要求,可自行申请 API Key:Google Translate、Azure Translate、DeepL Translate。申请流程参考相关的接口申请教程。更多支持语言详见:
LLM 翻译(AI 大模型)
Subtitle Translator 还支持 5 种 AI LLM 模型进行翻译,包括 OpenAI、DeepSeek、Siliconflow、Groq 等。
- 适用场景:适合更复杂的语言理解需求,如文学作品、技术文档等。
- 可定制性:支持自定义系统提示词(System Prompt)和用户提示词(User Prompt),让翻译风格更加符合预期。
- 温度控制(temperature):可以调整 AI 翻译的随机性,数值越高,翻译越有创意,但可能会降低稳定性。
字幕格式
Subtitle Translator 支持 .srt
、.ass
、.vtt
等多种字幕格式,并提供自动格式匹配功能:
- 双语字幕:勾选后,翻译后的文本将插入原字幕下方,并可调整译文的显示位置(上/下)。
- 时间轴兼容性:支持省略默认小时、超过 100 小时的时间格式,以及 1~3 位毫秒显示,确保兼容性。
- 自动编码识别:无需手动选择编码格式,工具会自动识别字幕文件编码,避免乱码问题。
翻译模式
Subtitle Translator 支持批量翻译和单文件模式,适应不同使用需求:
批量翻译(默认):
- 支持同时处理上百个文件,大幅提升工作效率。
- 翻译后的文件将自动保存在浏览器默认下载目录,无需手动操作。
单文件模式(适用于小型任务):
- 适用于单个字幕的快速翻译,支持直接粘贴文本翻译。
- 翻译结果可在网页端实时查看,并手动复制或导出。
- 若开启单文件模式,则上传新文件会覆盖上一个文件。
翻译缓存
Subtitle Translator 采用可选的本地缓存机制,提高翻译效率:
- 缓存规则:每段翻译结果将以
源文本_目标语言_源语言_翻译 API_模型设置
作为唯一 key 进行存储。 - 缓存命中条件:只有完全匹配相同参数的情况下,才会使用本地缓存结果,确保准确性。
- 缓存作用:避免重复翻译,减少 API 调用次数,提高翻译速度。
多语言翻译
Subtitle Translator 允许 将同一个字幕文件翻译成多种语言,适用于国际化场景:
- 例如:将英文字幕同时翻译为中文、日语、德语、法语,方便全球用户使用。
- 支持 35 种主流语言,并将持续扩展。
使用注意
使用 Subtitle Translator 时,请注意以下几点:
- DeepL API 不支持在网页上使用,所以 Subtitle Translator 在服务器端提供了一个专门的 DeepL 翻译转发接口,该接口仅用于数据转发,不会收集任何用户数据。用户可以选择在本地环境中部署并使用这一接口。
- Subtitle Translator 不会储存你的 API Key,所有数据均缓存在本地浏览器中。
- GTX Web 接口对服务器压力过大,改为仅在本地运行。另外,避免在全局代理环境下使用 GTX Web 接口,以免出现翻译错误。
更新日志
待更新功能:本地客户端化;对翻译后的字幕内容进行 ai 润色。
- 2025.03.20:完成 i18n 化;修复缓存 key 等已知 bug;项目开源。
- 2025.02.28:LLM 模型翻译时支持自定义系统提示词和用户提示词。
- 2025.02.27: 增强双语字幕的时间轴兼容性,支持省略默认小时、超过 100 小时的时间格式,以及 1 至 3 位数的毫秒显示。
- 2025.02.21: 支持一次性批量翻译成多种语言。
- 2025.02.08:修复多文件模式下的编码识别问题;新增 OpenAI 和 Groq 接口(可反馈其他接口需求)。
- 2025.02.06:新增 Siliconflow API;为 LLM 模型添加 temperature 设置,以控制 AI 翻译的随机性。
- 2025.02.05: 修复分块翻译时忽略空行和 DeeplX 换行符错误的问题;为不同 API 单独设置分块翻译参数。
- 2025.01.18: 支持自动识别上传文件的编码;可以设置翻译内容显示在原字幕的上一行或下一行。
- 2025.01.13:新增 DeepLX 自部署接口;将翻译 API 设置改为独立组件,简化前端设置逻辑。
- 2025.01.10:新增 DeepSeek 翻译接口。修复 DeepLX 字幕换行问题;优化翻译语言搜索识别(中英搜索支持)。
- 2024.12.19:自动识别单文件与多文件模式;新增自动识别源语言;优化单文件翻译后的文件导出命名规则。
- 2024.12.12: 使用 pLimit 限制并发模式,大幅减少免费 API 的报错问题。
- 2024.10.12:为 GTX API 添加了自定义延迟设置。(根据反馈,原设置在超过 150 次后容易达到上限,数量较低时则无需调整)
- 2024.09.08:增加 GTX API 的分批翻译限制,确保翻译的稳定性。新增繁体中文支持。
- 2024.09.07:优化对 webvtt 格式的识别;默认双语字幕格式为 .ass,并兼容多行字幕的双语处理。
- 2024.09.06:为翻译结果添加本地缓存,提升重复内容的翻译速度。
- 2024.09.05:跳过纯数字或字符内容,避免不必要的翻译。
- 2024.08.13:新增双语字幕输出功能。
- 2024.07.11:在单文件模式下,自动匹配字幕格式。
- 2024.07.06:新增对 vtt 和 ass 格式字幕的支持。
- 2024.07.05:字幕翻译语言支持扩展至 35 种。
- 2024.06.26:新增仅提取字幕内容的功能。
期待大家的反馈与建议,我将不断优化 Subtitle Translator,希望这款工具能够为大家带来便利,帮助解决观看视频时的语言障碍。