口型调试台

放大 2.0× | 上下位移 5% 放大的是渲染面本身(缓冲跟着变大),不是拉伸位图 —— 放大后仍然清晰。

词级嘴形表(按词整体替换该词跨度的帧;未命中的字仍走逐字规则)

中文裁剪档
| |
endpoint 与 admin passkey 沿用 tab 2。词表的唯一真源是 R2 上的一个对象 —— dev 和 persona 读的是同一份,保存后线上立即生效(没有灰度);服务端每次写前自动备份改动前的整表,可回滚。 存的是最终下发值(0-100 或 —=不写浮点,0=闭唇),运行时不再过 remapMouthValue。 每档一套帧,帧组数必须等于字数(音频按字给时间片)—— 一个字下的帧数就是可调的自由度。 新词的种子必须由 core 管线产出:在本目录跑 node gen-zh-words.mjs --only 新词(词先加进 zh-word-seed.js), 生成的仓库 JSON 只是首装种子 + 兜底,进 git 之后要在这里把新词保存到 R2 才会生效。
未载入
未选词