diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 21cfe857f0..09735b67c4 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "hyperframes", "description": "HyperFrames by HeyGen. Write HTML, render video. Compositions, GSAP and runtime adapter animations, captions, voiceovers, audio-reactive visuals, and website capture for HyperFrames.", - "version": "0.8.44", + "version": "0.8.45", "author": { "name": "HeyGen", "email": "hyperframes@heygen.com", diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json index 4033cc94ec..7fbcd8fa0a 100644 --- a/.codex-plugin/plugin.json +++ b/.codex-plugin/plugin.json @@ -1,7 +1,7 @@ { "name": "hyperframes", "description": "Write HTML, render video. Compositions, Tailwind v4 styles, GSAP and runtime adapter animations, captions, voiceovers, audio-reactive visuals, and website capture for HyperFrames.", - "version": "0.8.44", + "version": "0.8.45", "author": { "name": "HeyGen", "email": "hyperframes@heygen.com", diff --git a/.cursor-plugin/plugin.json b/.cursor-plugin/plugin.json index 2c9c2e2580..f96b87b13f 100644 --- a/.cursor-plugin/plugin.json +++ b/.cursor-plugin/plugin.json @@ -3,7 +3,7 @@ "name": "hyperframes", "displayName": "HyperFrames by HeyGen", "description": "Write HTML, render video. Compositions, Tailwind v4 styles, GSAP and runtime adapter animations, captions, voiceovers, audio-reactive visuals, and website capture for HyperFrames.", - "version": "0.8.44", + "version": "0.8.45", "author": { "name": "HeyGen", "email": "hyperframes@heygen.com" diff --git a/docs/changelog.mdx b/docs/changelog.mdx index 8e29f75261..f9ab676db9 100644 --- a/docs/changelog.mdx +++ b/docs/changelog.mdx @@ -8,6 +8,21 @@ Recent HyperFrames releases, including user-facing features, fixes, and migratio {/* New release entries are prepended by `bun run changelog:draft --write`. */} + +The render engine can now average several sub-frame captures into each output frame, which blurs rotation, scale and opacity the way After Effects does. It is opt-in and not yet reachable from a render configuration, so nothing changes for existing projects. + +## Features + +- **Engine:** Sub-frame multi-sample motion blur. For each output frame the capture path seeks the timeline to several sub-frame times across the shutter window, captures each, and averages them. Because it re-renders at every sample rather than offsetting copies of an element, it integrates rotation, scale, opacity, filters and child animation, which the motion-blur catalog component cannot do. Defaults follow After Effects: 16 samples, a 180 degree shutter at phase -90, averaged in sRGB, with linear light available as an opt-in. Static frames still cost one capture, so only moving frames pay for the extra samples. + **Not yet reachable from a render.** This release adds the engine capability behind `CaptureOptions.motionBlur`, and no render configuration sets that option yet, so there is no flag to turn it on. Wiring it through the producer follows in the next release ([0a1c6f5a4](https://github.com/heygen-com/hyperframes/commit/0a1c6f5a457ca1345d6b8ccede04769a0e009719), [#4019](https://github.com/heygen-com/hyperframes/pull/4019)). + +[View the full commit range](https://github.com/heygen-com/hyperframes/compare/v0.8.44...v0.8.45). + +