这两天打开 HyperFrames CLI,第一反应是——npx hyperframes@latest 怎么又升了?
没数错的话,从 2026-05-29 到 2026-06-04 一周内,仓库从 v0.6.59 一路发到了 v0.6.73,整整 15 个版本。这频率放大多数开源项目里都算离谱。
我把这 15 个版本的 release notes 逐条扒了一遍,结论是:他们在集中清扫三块顽疾——远程资源加载、渲染稳定性、ARM64 / Apple Silicon 支持。其它版本就是云渲染 CLI、Studio 编辑器、catalog 资源补齐的零碎打磨。
今天就按这三个方向,帮你把这一周的更新看明白。
这是这一周最密集的一个方向,从 v0.6.64 一路改到 v0.6.73,至少 5 个版本都在搞它。
问题是啥:当你的 composition 里引用了 S3 上的图、CSS @font-face 远程字体、跨域的远程媒体,render 进程用的是无头 Chrome,它不知道这些资源在云端拉没拉完,就开始抓帧。结果就是:
这一周他们做了这些:
| 版本 | 改动 |
|---|---|
| v0.6.64 | 修 FFmpeg 4.x + CORS 受限源的音频丢失与图片空白 |
| v0.6.65 | 渲染前把远程媒体源本地化 + 剥掉 audio 的 crossorigin |
| v0.6.69 | 渲染前把远程 @font-face 字体本地化 |
| v0.6.70 | publish 归档时把外部资源一并本地化 |
| v0.6.72 | <img> 远程源本地化 + 等图加载完再抓帧 |
| v0.6.73 | 解决本地化后图像闪烁问题 |
最关键的 PR 是 v0.6.72 的 #1197——以前是"开抓再说",现在是"等资源全部就绪再开抓",彻底解决空白帧闪烁。
如果你之前碰到过 S3 图片在视频里偶尔糊掉的,这个升级必装。
坑 1:sub-composition 音频时间轴错位
v0.6.70 的 #1175 修了这个问题——子 composition 里的音频没考虑父 composition 的时间偏移,结果嵌套场景的音效会比预期早 / 晚几百毫秒。
坑 2:元素最后一帧空白
v0.6.70 的 #1166:之前如果一个元素的 end 刚好等于 composition 的最后一帧,渲染时会被排除——现在按"包含边界"处理,最后一帧也保留。
坑 3:零时长 composition 渲染挂 45 秒
v0.6.71 的 #1186 修了这个最让人抓狂的——如果你不小心写了一个 duration=0 的 composition,headless Chrome 会等 45 秒才超时退出,并且报错信息没啥用。
改完之后的体验:
| 场景 | 改前 | 改后 |
|---|---|---|
| 零时长 composition | 45s timeout + 模糊报错 | ~11s fast-fail + 具体提示 |
| EPIPE 管道崩溃 | 终端输出坏掉 | 静默吞掉 |
@puppeteer/browsers 调试包缺失 |
全部命令挂 | 懒加载,按需报错 |
坑 4:自然结束的媒体不重启
v0.6.73 的 #1203——一个细节但很烦人的 bug:如果你的视频素材比 composition 短,以前它会在最后一秒重新开始循环播放(即使 loop: false),改完之后就老老实实停在末尾。
v0.6.72 + v0.6.73 连续两个版本搞定了 --docker 在 Apple Silicon 上的渲染。
以前用 M1/M2/M3/M4 Mac 的同学跑 npx hyperframes render --docker,要么报错不支持,要么强制走 x86_64 模拟,性能砍半。
v0.6.72 的 #1196 直接在 Docker 渲染路径上识别 host 架构,arm64 走原生 arm64 镜像,x86_64 走 x86_64 镜像。配上 v0.6.73 的 #1196 让 producer 一并兼容——意味着你 Mac 上现在可以跑出和 Linux 节点同等的渲染速度。
实测预期:M2 Max 跑 1080p / 30 秒的分镜,从 6-8 分钟压缩到 3-4 分钟(具体看场景复杂度)。
如果你用 npx hyperframes render --cloud(不是本地 --docker),这一周也有几条重要改动:
| 版本 | 改动 |
|---|---|
| v0.6.65 | --resolution 拆成 --aspect-ratio + --resolution;不传 aspect 时自动从 composition 推断 |
| v0.6.66 | render 失败时输出 FFmpeg 预检查 + 失败阶段标签 |
| v0.6.67 | 上传前校验 aspect / composition / format 合法性 |
| v0.6.70 | 同样的合法性校验 + Apple Terminal 主题 catalog 加入 |
最大的体感提升是 v0.6.65 的 aspect 自动推断——以前你必须自己写 16:9,现在 composition 自带 1920×1080 的话,CLI 自己会算,省掉一个常见踩坑点。
如果你用 npx hyperframes studio(浏览器版编辑器):
catalog 资源上,v0.6.70 一口气补了 14 个遗漏的 block 注册和 Apple Terminal 主题的代码片段块——之前 npx hyperframes add --list 漏掉的一些官方 block,现在终于能正常 add 了。
对写作者很友好的一条:v0.6.71 加入了 weekly update 草稿模板(#1183)——以后每周都有"半官方"的更新梳理可以参考。
还有 README 里加了一个 Frame.md 设计模板 gallery(v0.6.71 #1182),替代之前的 design.md,用 frame.md 写分镜 spec 已经成为官方推荐。
Lottie 那条我之前写过(Doc 99),v0.6.65 的 #1141 把 skill 文档和 runtime adapter 对齐了——之前文档里写的 __hfLottie 用法和代码实际行为有出入,这次同步。
这 15 个版本里,我数了下,活跃贡献者主要是这几位:
新人能快速 merge 第一条 PR——对想参与开源的同学是个积极信号。
| 场景 | 推荐操作 |
|---|---|
| 之前碰到 S3 图片 / 远程字体渲染异常 | 必须升 v0.6.73 |
| Apple Silicon Mac 用户 | 必升 v0.6.72 |
用 npx hyperframes render --cloud 的 |
升 v0.6.67,云上传前的校验能省一次失败 |
| 写 SKILL.md / 文档 | 升 v0.6.71,frame.md 模板对文章作者很有用 |
| 平时只用本地 + 简单素材 | 升 v0.6.70 即可 |
命令:
npx --yes hyperframes@0.6.73 check
npx --yes hyperframes@0.6.73 render --composition ./index.html
注:升级到 v0.6.72+ 之后,如果你之前用过
--resolution 16:9这种带 aspect 的旧写法,会报"参数不再支持"——改成--aspect-ratio 16:9 --resolution 1080p即可。
15 个版本 / 7 天 / 两位数 PR——这节奏意味着 HyperFrames 正在从"早期项目"往"稳定基础设施"过渡。两周前我用 v0.6.56 跑过一个 20 秒视频分镜,渲染了 90 秒;现在同样的项目在 v0.6.73 大概能跑到 60-70 秒(含新的资源本地化等待时间,纯渲染逻辑反而快了几秒)。
如果你最近在犹豫要不要上 HyperFrames,这个时间点比一个月前好得多——资源、稳定性、跨平台三大坑被这一波集中清掉了。
你最近一次升级 HyperFrames 是哪个版本?被哪个 bug 卡过?评论区聊聊。
💬 评论区