Skip to content

fix: AMLL 歌词在最小化恢复后逐词位置同步和渲染卡顿问题 - #109

Open
PhantomPixel-0418 wants to merge 2 commits into
SPlayer-Dev:devfrom
PhantomPixel-0418:fix-amll
Open

fix: AMLL 歌词在最小化恢复后逐词位置同步和渲染卡顿问题#109
PhantomPixel-0418 wants to merge 2 commits into
SPlayer-Dev:devfrom
PhantomPixel-0418:fix-amll

Conversation

@PhantomPixel-0418

@PhantomPixel-0418 PhantomPixel-0418 commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

改动类型

  • 新功能(feat)
  • 缺陷修复(fix)
  • 重构 / 优化(不改变对外行为)
  • 文档(docs)
  • 其他(请在「改动说明」中注明)

是否包含破坏性变更

  • 是(请在「改动说明」中详细描述)

改动说明

使用 AMLL 歌词引擎时,在全屏播放状态下将窗口最小化(触发 document.hidden = true),恢复后会出现以下两个问题:

  1. 逐词效果从错误位置开始:歌词的逐字高亮动画从当前时间点的之前位置重新开始,导致文字效果"从头飞起",与音频进度不同步。
  2. 暂停后卡死不动:恢复后歌词完全静止不动,需要再次切换播放/暂停状态才能恢复正常渲染。

本 pr 主要对这两个方面进行修复

TODO:

  • 继续后让动画回归当前状态,而不是暂停之前的
  • 暂停最小化时再播放修复
  • 暂停最小化修复
  • 播放最小化修复

测试情况

最小化 → 恢复播放:逐词动画从正确位置继续
最小化 → 恢复暂停:歌词静止可见,无卡死
普通播放/暂停:正常渲染
FullPlayer freeze/resume:状态同步正确

测试环境:Windows 25H2 Insider

截图 / 录屏

https://qfile.qq.com/q/vSNQe2TTag

自查清单

  • 本 PR 只包含一个主要功能 / 修复,没有夹带无关改动
  • 已在本地完整测试通过;AI 生成的代码同样自行测试并审阅过,未做未经验证的提交
  • 已运行 pnpm format,并确认 pnpm typecheckpnpm lint 通过
  • 改动涉及原生模块时已 pnpm build:native 验证;未手写 native/*/index.d.ts
  • 已向 dev 分支提交

@PhantomPixel-0418 PhantomPixel-0418 changed the title fix: 在最小化回来恢复播放时立即校准 Core 内部时钟以避免逐词效果丢失 fix: AMLL 歌词在最小化恢复后逐词位置同步和渲染卡顿问题 Jul 27, 2026
@PhantomPixel-0418
PhantomPixel-0418 marked this pull request as ready for review July 27, 2026 02:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant