# 宠物闪烁与橙色比例:轻量取证 轻量取证阶段实际查看三套图集全部 **171 帧**及五张接触图,读取 **31 段**现有 WebM 的新头信息,并核对文件字节身份。没有启动浏览器、宿主、Electron,没有重新编码,也没有重新完整解码视频。 ## 已确认的素材事实 | 默认角色 / 动作 | 源帧数 / 周期 | 平均逻辑帧率 | 可见高度范围 | | --- | --- | --- | --- | | 银白 / idle | 6 / 1100ms | 5.45 帧/秒 | 198px | | 橙色 / review | 6 / 1030ms | 5.83 帧/秒 | 189–190px | | 海蓝 / idle | 6 / 1100ms | 5.45 帧/秒 | 198px | 原始单元是 192×208px。这里的宽高按 alpha≥16 的实际内容边界计算,既不是画布尺寸,也不是播放器 CSS 比例。 橙色 jumping 高仅 **113–125px**,比阅读待机低约 **34–41%**;原 idle 高109px,failed 高64–82px。点击配置原先仍含 jumping,因此阅读待机正确不能保证点击后比例一致。waving 高176–177px,宽168–170px;它比 review 的106–108px更宽,是另一组源姿态,不能宣传为完全相同的身形。 已选择一致比例的最小调整:橙色自动点击只用 care;care 是既有 review.webm 的逐字节副本,1030ms,仍为正常阅读姿态。关怀事件继续用 care,工作成功/失败分别用 care/review。原 waving、idle、jumping、failed 完整保留在明确标识的手动原始预览分类。没有重新编码、全局 CSS 拉伸、逐帧人体校正或修改 master。 [默认待机逐帧](default-idles-source-frames.png) · [橙色正常与扁姿态对照](orange-normal-vs-flat.png) · [银白全部源帧](silver-all-source-frames.png) · [橙色全部源帧](orange-all-source-frames.png) · [海蓝全部源帧](tide-all-source-frames.png) ## 100fps 的实际含义 31 段文件为 640×360 VP9 alpha,容器帧率100fps。它使用10ms刻度重复已有源帧,精确表达原 SPEC 的帧保持时长,**没有生成中间姿态**。 九类原动作平均仅5.45–7.55个逻辑帧/秒;最短单帧保持110ms,局部更新最快约9.09次/秒。增加重复帧不等于插帧,也不能消除源画本身的姿态跳变。100fps可能增加软件解码负担,但本轮没有测量其实际CPU、GPU耗用,不能把它直接当作唯一闪烁原因。 31 段包含27个源动作、3个 care 别名和橙色 source-idle 别名。银白/海蓝 care 对应 waving;橙色 care 现对应 review,不再对应旧 waving。每个文件都按实际源动作与此前已完整解码校验的参照文件逐字节比对,结果全部相同;因此可关联此前“每段保持期间像素不变、总帧数及时长正确”的验证。`existing-31-clips.json`明确区分新头信息与复用的旧解码证据,本轮没有再做完整解码。 ## 循环与播放器证据应分开 默认待机首末轮廓重叠率分别为银白0.9431、橙色0.8161、海蓝0.9621(alpha≥16)。这只是轮廓连续性指标,不代表主观流畅性评分;橙色 review 首末变化更明显,不能声称三套源素材完全无接缝。 修复前播放器的无界面 VM 复现显示:单一 idle 初始加载加三次 ended,会重新 load 四次并交替 A/B。两层同时0.18秒交叉淡入时,两个原本不透明像素在中点的理论合成 alpha 为0.75,会周期性变淡。当前证据并未证明解码器实际输出透明空帧。原55%垂直 squash 在已开启 presentation 的新代码里已有拦截,不能把当前橙色扁姿态直接归咎该旧动画。 最小修复优先处理同素材循环与切层可见性,再验收真实播放。若仍有源帧跳变或解码压力,再单独评估稳定选帧、温和重定时或保留精确时间戳的 VFR;这些是后续候选,未在本轮实施。 ## 许可与范围 图像来自用户已选 [fywdy/chatgpt-chibi-pets](https://github.com/fywdy/chatgpt-chibi-pets);接触图是源帧提取与排版,沿用 [**CC BY-NC 4.0**](https://creativecommons.org/licenses/by-nc/4.0/),没有重新授权。原 master、SPEC 与完整许可仍保存在项目 [assets/upstream/fywdy](../../../assets/upstream/fywdy/),包括 [NOTICE](../../../assets/upstream/fywdy/NOTICE.md) 和 [LICENSE](../../../assets/upstream/fywdy/LICENSE)。 本摘要不含用户机器路径。源素材本身的裁切、比例和风格不连续仍有记录;没有把无 alpha 触边误报成“美术无裁切”。后续真实单宠采样与仍待验证的边界见下节。 ## 播放器候选回归 已加入仅对 presentation 启用的候选:固定单待机采用原生 loop;新动作先保留旧帧,待新视频帧可提交时原子换层,取消交叉淡化;过期/失败/抢占/卸载均取消监听、帧回调与计时器。真实提交记录与加载请求代际分离,避免旧 ended 抢占新动作,也避免新加载失败后旧动画永久失去结束权限。工作状态与热配置路径保留原有状态语义。未启用 presentation 的宠物保留旧播放分支。 直接执行候选源码的 18 项 helper mock、20 项 Web mock 已通过,且测试输入与官方运行时构建一致。 ## 真实单宠复测 在内存恢复 normal/raw1 后,使用同一隔离 Profile 与已批准的官方 Electron 43.3.0,按橙色、银白、海蓝顺序运行,每次仅一只,阶段结束即停止本任务进程。三只均通过真实原生界面触发点击和显式关怀,并查看实际窗口像素、云朵、回到待机;蓝色还验证了关闭气泡。橙色点击和关怀保持阅读比例,采样中未复现空帧或周期变淡。此前保存的喝水92分钟在主窗口重启后恢复。 这属于有界截图采样,不是连续逐帧录制,也不能证明长期零闪烁。220ms轻回弹完整曲线、短拖动的屏幕位移、OS跨应用焦点、透明区域点击穿透和物理多屏/DPR仍未完整验收;不据白底窗口截图推导整个桌面合成透明性。源动画仍有约6帧/秒的分帧感,本次没有插帧。明细与局限见 [真实 helper 结果](native-helper-results.json)。 ## 橙色短时连续采样补充 使用现有原生截图接口连续取样,没有新增录屏权限。24帧预采样覆盖1434ms;另一段连续48帧覆盖3010ms,约三轮1030ms待机,采集耗时中位数57ms、单次最大326ms。按PNG完整字节精确去重后,两段只出现同一组6个已逐张查看的正常阅读姿态;采到的帧未见空白、整体变淡或变扁。 点击后的24帧覆盖约653–2295ms,24张不同图像均已查看,未见空白或变扁。但UI动作与状态读取先于截图,**最初653ms没有覆盖,因此仍不能确认初次换层和220ms回弹全过程无闪烁**。截图间隙可能漏掉短暂问题,尤其326ms那次采集;本次没有60Hz录制、解码器耗时或掉帧统计。源姿态仍按约6逻辑帧/秒离散变化,完整连续人眼观感验收仍有缺口,不据这些采样宣称闪烁已彻底解决。采样节奏及边界均保存在 [真实 helper 结果](native-helper-results.json)。补采结束已停止自有进程,前后压力均为normal/raw1。