Skip to content

2024.6.1

Compare
Choose a tag to compare
@xmcp xmcp released this 26 May 19:32
· 44 commits to master since this release

pakku 2024.6.1 版本主要增加了一些高级用户可能会用到的新功能,以及一些性能提升和 bug 修复。

以下是 2024.6.1 版本相比于 2024.5.1 的变化。

新功能

弹幕密度分析图更新

在此前的版本中,弹幕密度分析图并不会显示有多少弹幕被删除了(包括命中播放器屏蔽词和被自动弹幕优选功能删除的弹幕)。从 2024.6.1 版本起,弹幕密度分析图会把被删除弹幕的密度显示为一个独立的部分。

如下图所示,图中的蓝色、黄色、红色部分分别对应实际显示的、被合并的、被删除的弹幕密度。因此之前版本的红色对应现在的黄色。

image

另外,2024.6.1 版本还调整了弹幕密度分析图的密度计算公式,使其与 pakku 其他功能的计算方式相同。

通过用户脚本修改弹幕元信息

从 2024.6.1 版本起,用户脚本新增 tweak_proto_view API,可以修改播放器获取到的弹幕元信息(api.bilibili.com/x/v2/dm/web/view),详见 用户脚本文档

由于这是 B 站播放器的私有 API,pakku 不保证此接口的稳定性,也无法解释每个字段的准确含义。可以在播放器页面的 console 里搜索 “pakku protobuf api: got view” 来看看它的具体内容。

以下是一些利用此 API 可以实现的功能:

tweak_proto_view(view=>{
    // 删除视频中的一键三连按钮
    view.commandDms = view.commandDms.filter(d => d.command!=='#ATTENTION#');
    
    // 禁用表情弹幕,如 “OHH”
    view.expressions = [];
    
    // 删除偶尔出现的贴片广告,如 “云视听小电视”
    view.activityMetas = [];
    view.maskWalls = [];
    view.postPanel = [];
    view.postPanelV2 = [];
    
    // 非硬核会员启用 “硬核会员弹幕模式” 选项
    view.dmSetting.seniorModeSwitch = 3;
});

自定义数值类型选项

pakku 的设置页面中有很多数值类型的选项,但仅能在几个预设值(禁用、轻微、中等、强力)中选择一个。从 2024.6.1 版本起,勾选了 “我是高级用户” 后,可以选择 “自定义” 然后输入其他数值:

image

另外,从 2024.6.1 版本起,“自动弹幕优选" 功能的阈值预设从 240、160、100 调整为 150、100、70。更新后将保持原来设置的数值,因此原先设置为 “中等 (>160)” 将在更新后显示为 “自定义 (>160)”。

性能提升

  • (2024.5.2)预读取视频时长,对短视频避免预加载多余分片或创建多余的 Web Worker
  • (2024.5.4)改进播放器重新加载弹幕的方式,避免在视频页面反复开关 pakku 时消耗额外内存
  • (2024.6.1)减少关键路径上的 await 以缓解处理弹幕时主线程被播放器阻塞

其他改进

  • (2024.5.2)弹幕处理结果页面选择输出为 debug 格式时,将把弹幕保存为全局变量 D,以便用 console 调试
  • (2024.5.2)弹幕处理结果页面选择输出为 XML 格式时,将增加弹幕的云屏蔽权重字段
  • (2024.6.1)统计信息面板将显示执行的用户脚本数量
  • (2024.6.1)更新了设置页面的示例图片
  • (2024.5.3)完善了导入设置时的合法性检查
  • (2024.5.4)设置保存失败时增加错误提示
  • (2024.5.2)对 Edge 商店提交单独打包的版本,此版本按审核要求去除了设置页面中提及其他浏览器的内容

Bug 修复

  • (2024.5.2)播放器无法从B站账号同步弹幕设置#282
  • (2024.5.3)从旧版本升级时,设置迁移可能工作不正常导致设置损坏#283
  • (2024.6.1)未被合并的弹幕也会显示为被 pakku 标准化后的文本
  • (2024.5.4)按住 ctrl 查询弹幕信息功能对 UP 主弹幕无法工作
  • (2024.5.3)与其他设备上的旧版 pakku 同时使用时,浏览器的同步功能可能导致设置损坏
  • (2024.5.4)重置所有设置时 “阻止弹幕动态更新" 功能的生效状态没有应用
  • (2024.5.2)弹幕处理结果页面无法获取结果时将卡在 “loading...” 状态
  • (2024.5.4)用户脚本的最后一行是注释时会报告为存在语法错误
  • (2024.6.1)用户脚本的 Web Worker 没有及时关闭导致消耗额外内存
  • (2024.5.2)解析 URL 参数的方式不符合规范