PotPlayer 实时字幕在线翻译插件 基于百度开放翻译平台
就是一个 PotPlayer 用的翻译扩展,实现 PotPlayer 在使用外挂字幕时,可以实时翻译字幕为你想要的语言。
解决看美剧、英剧、日剧、韩剧时,字幕只有英语、日语、韩语等语言的情况。
前言
有时候看剧视频完全没有中文字幕,但是有其他语言的外挂字幕, potplayer 内置的那个几个翻译扩展,用倒是都能用,但是问题是:要么不好用!比如那个谷歌翻译,英译中还算凑合,韩语和日语翻译成中文,翻译的是个什么鬼东西啊!要么API的价格是我不能接受的。于是本着,不要自己造轮子的想法,去github上看看有没有什么现成轮子。果然发现了一个项目PotPlayer_Subtitle_Translate_Baidu
现在最前边
- 翻译效果:毕竟是机器翻译,哪怕是目前最好的 deepl ,翻译的结果也不要抱太高的期望!
- 只支持外挂字幕翻译,也就是一个视频文件(.MP4 .avi .webm) + 一个字幕文件(.srt,.ass,.VTT)的才行,那种自己直接内嵌在视频里的字幕翻译不了。
- 为什么我选了百度翻译,因为目前韩日英这三种我常看的字幕语言中常见的在线翻译API,百度属于不要钱,翻译的质量还凑合的那个。
- deepl 肯定是目前最优,但是API贵就算了,国内还没法直接买,虚拟信用卡还容易ban,没有普适性。
- OpenAI 稍次,但是国内还是没法直接买,虚拟信用卡还容易被ban,没有普适性。
- 有道智云 腾讯翻译君,这两个也不错,但是免费额度很低。
- 百度 翻译出的文本基本还算是人话, 主要是它不要钱啊! 即使不认证每个月也有5W字符额度,认证后每月有100W字符额度,这个量已经能用很久了。
- 谷歌 谷歌翻译对日语简直是一坨 :hankey: ,完全看不下去。
- yandex 凑合吧,但作为毛子的服务现在不太稳嘛。
使用方法
注册百度翻译开放平台
- 首先你要有百度账号,没有就注册一个
- 点击前往百度翻译开放平台
- 登录你自己的百度账号
- 第2步的网址打开后,点击左侧的【通用翻译API】拉到最底下有个【立即使用】按钮,点击一下。
- 选择个人开发者,接下来填写个人信息,如实填写即可。
- 开通通用翻译API,点击跳转开通服务页面。选中通用翻译API,然后点击下一步。
- 点击开通标准版 或者高级版,(高级版,需要身份证实名认证,这个认证是额外的,即使你百度账号实名过,这里也需要再实名认证一次,看你自己需求了)
- 填写应用名称,写一个自己好记的名字就行,其他的都可以不用填。然后勾选我已知晓翻译API计费规则,点击确认开通。
- 进入到如下网址:开发者信息,可以看到有两个项目,一个叫【APP ID】,一个叫【密钥】,记住这两个东西,下边要用到。
Potplayer翻译扩展安装
- 点击这里下载扩展:下载地址1(密码:acgmoe)
- 打开PotPlayer播放器,点鼠标右键,点击选项(或者你按快捷键
F5
)在左侧找到,扩展功能→实时字幕翻译
- 把刚才下载的压缩包中的
SubtitleTranslate - baidu.as
与SubtitleTranslate - baidu.ico
文件放到打开的文件夹中。 - 重启 potplayer 。
Potplayer配置翻译扩展
- 再次打开 PotPlayer 播放器,点鼠标右键,点击选项(或者你按快捷键
F5
)在左侧找到,扩展功能→实时字幕翻译 - 选中【Bai Du translate】 点击【账户设置】
- 输入之前记录的【APP ID】与【密钥】,点确定保存。如果弹出窗口显示 【可正常处理】,说明扩展配置无误。
使用Potplayer翻译扩展
- 可以参照我上边的图片中的设置
- 翻译引擎:Bai Du translate
- 使用条件:仅用于所选语言
- 翻译位置:上边显示翻译(就是翻译显示在原有字幕上边一行,根据你的喜好选择就好)
- 原始语言:自动检查
- 目标语言:你需要翻译到哪种语言就在下拉框里选哪个。
- 自定义语言:
en eng encc english ja jpn japanese ko kor korean
这些字符指的是,外挂字幕文件在文件名中声明的语言类型,当 potplayer 发现字幕文件声明自己的语言类型是“自定义语言”里设置的语言时,就会自动开始在线翻译了(因为我选的使用条件:仅用于所选语言)。
比如这张图中,第一个字幕文件声明自己是eng,也就是英语字幕,第二个字幕文件文件声明自己是jpn,也就是日语字幕。
-
随便打开一个带英语日语韩语外挂字幕的视频,测试一下。
-
如果发现没有出现翻译,可以尝试,在 potplayer 播放视频时依次,右键点击视频->字幕->在线字幕翻译->总是使用。强制调用翻译看一下是不是正常。如果这个时候正常,说明要么字幕文件的文件名中没声明自己的语言,要么声明的语言种类不在刚才设置的
自定义语言
范围内。
最后的一点废话
错误码 | 含义 | 解决方法 |
---|---|---|
52000 | 成功 | 你都成功了还要啥解决办法 |
52001 | 请求超时 | 重试 |
52002 | 系统错误 | 重试 |
52003 | 未授权用户 | 检查您的appld是否正确,或者服务是否开通 |
54000 | 必填参数为空 | 检查是否少传参数 |
54001 | 签名错误 | 请检查您的签名生成方法 |
54003 | 访问频率受限 | 个人版每秒只能翻译1次,请用高级版 |
54004 | 账户余额不足 | 请前往管理控制台为账户充值 |
54005 | 长query请求频整 | 请降低长query的发送频率,3s后再试 |
58000 | 客户端IP非法 | 管理控制平台修改 IP限制,把IP留空 |
58001 | 译文语言方向不支持 | 检查译文语言是否在语言列表里 |
58002 | 服务当前已关闭 | 请前往管理控制台开启服务 |
90107 | 认证未通过或未生效 | 请前往我的认证查看认证进度 |
卧烟伊豆湖
2023-04-22 06:29
DeepL的拓展可以分享一下吗?