近年来,在线视频的兴起使得许多热门资源在平台上都能找到翻译,而原本活跃的字幕组则逐渐淡出人们的视野。然而,对于冷门视频和自制视频的字幕需求却未能得到有效满足,导致生肉视频越来越多。为了解决这个问题,可以用 Whisper 工具为这些生肉视频自动生成字幕,并通过翻译接口将其翻译成中文。详细的操作步骤可参考文章:找不到字幕?Whisper 让不懂外语的你也能看懂日剧

针对市面上字幕翻译工具普遍存在的诸多问题,如翻译速度慢、不支持批量处理、需人工干预等,我开发了一款免费且功能全面的 SRT 字幕翻译工具—— subtitle-translator。这款工具支持多语言字幕文件转换,并能实现秒级翻译速度,大幅提升翻译效率。至今,已成功转录超过 500 个视频,翻译后的字幕文件可在 whisper-subtitles 查看。

特色功能

  • 秒级翻译:利用字幕文本的分块压缩和并行处理技术,除 GTX 接口稍慢外,基本实现了 1 秒翻译一集电视剧。
  • 批量翻译:一次性处理上百份字幕文件,大大提高工作效率。
  • 多语言支持:提供包括英语、中文、日语、韩语、西班牙语、法语、德语、意大利语、俄语、葡萄牙语、印地语、阿拉伯语和孟加拉语的 13 种语言的翻译,并将根据用户反馈持续增加新语言。
  • 多接口选择:提供 3 种免费和 3 种商业级翻译 API,满足不同需求。
  • 字幕提取:在单文件模式下,用户可以一键提取并复制字幕中的文本,适用于 AI 总结等应用。

参数说明

翻译模式

subtitle-translator 设有单文件和多文件两种翻译模式,适应不同的使用场景。

  • 单文件模式:通过上传字幕文件或粘贴字幕文本导入字幕。翻译完成后,结果将显示在文本框中,需要手动复制或导出。
  • 多文件模式:支持批量上传字幕文件,翻译后的字幕文件将按原名称保存在浏览器默认下载目录,无需人工干涉。

翻译 API

subtitle-translator 提供了 6 种翻译 API,一般选择免费的 GTX API 即可。

  • 翻译质量:DeepL (X) > Google Translate > GTX Web(免费)> GTX API(免费)
  • 稳定性:Google Translate > DeepL > GTX API(免费)> GTX Web(免费)> DeepLX

如果对翻译速度要求高,可以自行申请 Google TranslateAzure TranslateDeepL Translate 的 API 密钥。Google Translate 在常见句子的翻译上较为普遍,特别适合翻译用户界面 UI,每月可免费翻译 50 万字符;DeepL 在长文本翻译方面表现更优,能提供更流畅的翻译结果,每月可免费翻译 50 万字符;Azure Translate 支持语言较多,每月可免费翻译 200 万字符(仅限注册 Azure 后的前 12 个月)。若想申请这些 API,可参考相关的接口申请教程

分割翻译

为加快翻译速度,我将多行字幕打包在一起翻译,而这里的分割翻译字符数就是每个打包块的上限。以下是每个翻译服务的最大字符数限制:

  • DeepL Free API:每个请求最大字符数为 5000 个字符。
  • Azure Translate:每个请求最大字符数为 10K 个字符。
  • Google Translate: Google Translate 网页界面每次翻译最多 5000 个字符,Google Cloud Translation API 每个请求最大字符数为 30K 个字符。(由于 Google 翻译会破坏换行符,因此未使用分割翻译。)

延迟时间

延迟时间主要针对 Azure Translate 的免费套餐,其他翻译 API 可以不修改。在我的测试中,Azure Translate Free 的延迟时间设为 5000 毫秒以上为佳。大量字幕需要翻译时,可以多设些延迟,避免出现大量空白字幕。

使用注意

使用 subtitle-translator 时,请注意以下几点:

  • 避免在全局代理环境下使用 GTX Web 接口,以免出现翻译错误。
  • DeepL API 不支持在网页上使用,所以 subtitle-translator 在服务器端提供了一个专门的 DeepL 翻译转发接口,该接口仅用于数据转发,不会收集任何用户数据。用户可以选择在本地环境中部署并使用这一接口。
  • subtitle-translator 不会储存你的 API Key,所有数据均缓存在本地浏览器中。

结语

subtitle-translator 是一款免费的字幕翻译工具,在多文件翻译、速度和质量方面进行了重点优化。希望这款工具能够为大家带来便利,解决观看视频时的语言障碍。如有任何建议或问题,欢迎提出,我将持续更新本工具。