修「画面清楚、播放稳定,但清晰度就是上不去」。真机实测:视频本身有 1080p / 1440p / 2160p 可选,带宽也足够(实测 3.85.3 Mbps,而 1080p 只需 3.0),缓冲甚至堆到 **4349 秒** —— 画面却全程停在 720p,怎么都不升。
变更
- 「只在服务端给过的档位里选」这条约束改为只对采集会话生效(P11-152)。这条约束原本是为「用采集材料建的会话」设计的 —— 那种会话服务端只提供浏览器当时选中的档位,所以要收窄候选。但它此前被套用到所有会话,而普通会话服务端点播是要什么给什么:于是候选集合永远只剩「已经请求过的那一档」——
我们不去请求 1080p ⇒ 服务端也就不推它 ⇒ 集合永远不变 ⇒ 死锁在 720p(手机端此前「停在 144p 不回升」同源)。现在普通会话恢复自由升档,采集会话仍按老规矩收窄。 - 附带一次编译修复(把「是否采集会话」改由工厂闭包传入 —— 该字段在选择器内部不可见)。
进展与已知问题
- 背景:这条约束是本轮为「采集会话」加的(见 alpha.19 之前那条线),属于为 A 场景造的约束被静默套到 B 场景的典型 —— 它的死法看起来不像 bug(播放稳定、只是永远低档),所以拖到现在才被你看出来。
- 仍未解决:WEB-SABR 仍不能作为日常主路(能真播约 17 秒后被服务端要求新令牌);默认已是「单次尝试 + 失败即让位主链」,不影响观看。