lxh2875931338
937bcdd63d
fix(playback): 缓冲抖动下看门狗失效 + 元数据改到播放稳定后再抓
实测(公网链路,自然播完 -> 自动下一首)暴露两个新问题:
1. 看门狗在 buffering 抖动时永远不触发
原实现每次 buffering=true 都重置 30s 计时器,而弱网下它会 true/false
每 2~5s 抖一次,于是计时器一直被重置,卡死 60s+ 也不会自愈。
改为记录"最近一次缓冲时间",用「进度 30s 未推进 + 20s 内发生过缓冲」
两个条件判定,暂停时不会误触发。
2. 元数据抓取在起播瞬间抢带宽
新歌 open 后 mpv 还在持续填缓冲,此时插入 2MB 标签下载会把缓冲打回 0。
实测下一首因此要等 60s+。
改为等播放真正稳定(进度 >= 5s 且连续 2s 不在 buffering,最多等 30s)
再抓元数据;等不到就跳过本次(下次播放再试),优先保证出声。
验证:公网 + 移动数据下切歌,next 发起后 2ms 即 open;
未稳定时日志出现"播放未稳定,跳过本次元数据抓取",不再有 2MB 下载与播放抢带宽。
2026-10-23 21:35:40 +08:00
..
2026-08-27 22:54:18 +08:00
2026-08-19 23:56:31 +08:00
2026-10-22 22:57:34 +08:00
2026-10-23 21:35:40 +08:00
2026-10-23 21:04:45 +08:00
2026-08-17 23:00:30 +08:00