Skip to content

“快捷键扩展-开关 CC 字幕”对于语言的选择问题(对于“最近一次使用的语言”的取用有误) #5685

Description

@B1ngFeng

对应功能

插件:快捷键扩展 - 开关 CC 字幕
内部名称:keymap.actions.toggleSubtitle

问题描述

问题现象描述和逻辑分析:
根据PR #5561 的描述,没有人工上传字幕时,会先尝试“按最近一次使用的语言匹配 AI 生成字幕”,如果没有则选择列表第一项。但是我在观看 只有AI字幕包含中文和英文的视频 时在手动选择AI中文字幕后,无论是开启或关闭字幕状态还是刷新网页来试图记住语言,再用快捷键开启CC字幕时都还是会选择英文字幕,而非我最近一次使用的中文。(在下面的代码分析中可知,实际是因为被认为“最近一次使用的语言”是英文所以才自动选择英文字幕)

代码分析:
根据 选择字幕语言的代码‎上次使用语言subtitleLanguage的声明 ,上次使用语言是取用的 subtitle.lan,而我的状态这个值一直是en,在我手动选择AI中文字幕后也没有更改,所以才会遇到上面问题现象描述中自动选择AI英文字幕的问题。
我实测发现这个值只有在选择人工字幕时才会更改,选择AI字幕时并不会改变,所以需要在我看一个 有人工中文字幕的视频 并使用人工中文字幕之后,快捷键开启字幕功能才能自动优先选择人工中文或AI中文字幕。而我发现 subtitle.preferred_language 这个值就可以人工字幕(如zh)和AI字幕(如ai-zh)都会记录。

修改建议:

  1. “上次使用语言”的取用从 subtitle.lan 改为 subtitle.preferred_language。
  2. 更进一步:在用户明确语言偏好的场景下,由于并非所有视频都能有用户偏好语言的字幕,导致上述字段会频繁更改而偏离用户偏好,可以考虑改为让用户明确设置语言偏好优先级,以此智能选择字幕语言。

脚本版本

v2.11.0-154-g4a2741bbb

脚本管理器及版本

Tampermonkey v5.5.0

浏览器及版本

Google Chrome 150.0.7871.125(正式版本) (64 位)

播放器版本

4.9.91-rc.4906.0-3b2b761e

播放策略

默认

错误信息

附加截图

No response

致遇到了相同问题准备回复的人

太长不看
1、遇到了相同的问题:请用左下角的 reaction 点赞
2、实时关注该 Issue 的后续进展:请用 Issue 页上的 Subscribe 功能(在 PC 端按钮通常位于页面右侧)。
请您回复前务必确认您有在本 Issue 之外补充了其它相关信息(比如 Log)再行回复以免对他人造成不必要的困扰

完整版 由于每个 Issue 甚至整个项目都是可以订阅通知的, 对于已经有人汇报过的 Bug, 如果您也遇到了并且没有其他信息要补充, 可以直接在左下点个赞表示 +1, 不要再去新增评论。想关注后续的可以用 Subscribe,Subscribe 之后该 Issue 如果有变动都可以收到通知,如果不想被回复打扰可以使用更加进阶的 Customize 功能,勾选 "Closed" & "Reopened"。Closed 通常代表该 Issue 已被解决,极少数情况下的 Reopened 代表该 Issue 的问题重新出现。如果您新增了无意义评论,因为 Issue 这个 bug tracker 与邮件列表类似,订阅某个 Issue 的用户会在每次这个 Issue 有新的动态时收到一封新的提醒邮件。也就是说,在 Issue 中的一个不能提供新的信息的评论,相当于给所有订阅这个 Issue 的用户发了一封垃圾邮件(spam)。尤其项目的维护者也是订阅者中的一员,太多垃圾邮件会对维护者带来很多不必要的困扰。发送垃圾邮件在开源社区通常是不那么受欢迎的行为。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions