Agent Skills › heygen-com/hyperframes › remotion-to-hyperframes

remotion-to-hyperframes

GitHub

将 Remotion、Motion Canvas 等动画源码或渲染视频迁移至 HyperFrames,支持代码翻译与媒体导入,并通过逐帧比对验证还原度。

skills/remotion-to-hyperframes/SKILL.md heygen-com/hyperframes

Trigger Scenarios

需要将现有 Remotion 或其他动画项目迁移到 HyperFrames 需要验证迁移后的内容与原视频是否一致

Install

npx skills add heygen-com/hyperframes --skill remotion-to-hyperframes -g -y
More Options

Use without installing

npx skills use heygen-com/hyperframes@remotion-to-hyperframes

指定 Agent (Claude Code)

npx skills add heygen-com/hyperframes --skill remotion-to-hyperframes -a claude-code -g -y

安装 repo 全部 skill

npx skills add heygen-com/hyperframes --all -g -y

预览 repo 内 skill

npx skills add heygen-com/hyperframes --list

SKILL.md

Frontmatter
{
    "name": "remotion-to-hyperframes",
    "description": "Bring existing video code or footage into HyperFrames and verify it frame by frame against the original - Remotion first, also Motion Canvas, Lottie, Three.js, p5.js, canvas or plain HTML\/CSS animation, or renders from Manim, After Effects or Blender. Use to port, convert, migrate or reuse work made with another tool."
}

Plugin installs: Before setup or freshness commands, follow plugin execution rules when this skill is inside a HyperFrames plugin.

Import into HyperFrames

HyperFrames is the container: its tracks, sub-compositions and variables are editable in Studio whatever runs inside a clip. Bring each part in at the highest level it supports and record which level you used.

Level For How Editable in Studio afterwards
Native code that can become HTML + GSAP: most Remotion, HTML/CSS/GSAP animation, simple Motion Canvas translate it, then verify frame by frame every element; variables, catalog, presets apply
Hosted code that can draw any requested frame in a browser: canvas, p5.js, Three.js, Lottie, WebGL, other JS animation keep the code and drive it from HyperFrames time timing, position, exposed parameters
Media anything that outputs video or frames: Manim, After Effects, Blender, PIL, moviepy render to a file and use it as a clip cut, place, layer; not the pixels inside

Code that depends on wall-clock time, live physics or the network can only come in as media.

Native: translate, then verify

  1. For Remotion, run python3 <SKILL_DIR>/scripts/lint_source.py <source dir> first. Blockers (useState, useReducer, useEffect with dependencies, async calculateMetadata, React UI kits such as MUI, Chakra, Mantine, antd, shadcn, Radix, NextUI) don't translate: host them or refactor them out, never approximate (references/escape-hatch.md). Warnings (@remotion/lambda config, delayRender, useMemo, custom hooks) are dropped and noted.
  2. Translate to the /hyperframes contract: one sub-composition per scene, times in seconds (frame / fps), asset paths root-relative. Each Remotion API's equivalent is in references/api-map.md. Put Remotion's render-page rule * { box-sizing: border-box; } once in the root index.html <style>: without it every bordered or padded element grows by its border and padding.
  3. Keep it editable: the source's props become data-composition-variables bound with data-var-text, data-var-src or var(--id); each Sequence becomes a timed clip or a sub-composition; a reused component becomes one sub-composition mounted several times with data-variable-values.
  4. Compare frame by frame: npx hyperframes diff <original.mp4> . --at <t,…> scores your project against the original at those times without rendering; sample every scene and both sides of every cut. Then render and npx hyperframes diff <original.mp4> <hf.mp4> scores every frame: SSIM, the worst cell of each frame (one late or recoloured element), cuts, and a sheet of the worst moments (thresholds per complexity tier in references/eval.md). Render the Remotion side with Config.setVideoImageFormat("png") and Config.setColorSpace("bt709"), or the diff measures the encoders (about 0.05 SSIM).
  5. Write what didn't translate cleanly (dropped volume ramps, approximated presentations, substituted fonts) to TRANSLATION_NOTES.md.
Remotion Read
Composition, defaultProps, schema, calculateMetadata references/parameters.md
Sequence, Series, Loop, AbsoluteFill, Freeze references/sequencing.md
useCurrentFrame, interpolate, spring, Easing, interpolateColors references/timing.md
Audio, Video, Img, IFrame, staticFile, delayRender references/media.md
TransitionSeries, @remotion/transitions references/transitions.md
@remotion/lottie references/lottie.md
@remotion/google-fonts, Font.loadFont, @font-face references/fonts.md
What can't be ported references/limitations.md

Before hand-building a named visual the source used, search npx hyperframes catalog --query "<the visual, in English>" --json: it ranks the whole registry with nothing installed.

Hosted

Keep the code and let HyperFrames own the clock: it draws the frame for the time it is given. The seek protocol and the built-in adapters for Lottie, Three.js, anime.js, WAAPI and CSS animations are in ../hyperframes/references/runtimes.md. No requestAnimationFrame loop or timer as the time source, seeded randomness only, and data-duration on the root when nothing else defines the length.

Media

<video class="clip" data-has-audio="true" src="assets/x.mp4" ...>, or muted when it is silent. Nothing else is needed.

In the final message, list each imported part with its level, what a person can change in Studio, and how the frame-by-frame comparison came out.

Version History

  • 34a8d48 Current 2026-11-02 22:56
  • 9566f96 2026-10-19 05:57

    修复技能文档中的错误事实、损坏路径及插件工作流上下文问题

  • a80d733 2026-09-22 11:13

    修复技能:将 Remotion 翻译功能作为子组件进行教学和交付;文档更新:统一说明子组件结构及场景切换与淡入淡出的位置

  • 097d901 2026-08-27 19:55

    强制要求在执行技能更新前需获得用户确认,防止代理未经询问自动运行 npx 更新命令。

  • 9d4c349 2026-07-24 22:18

Same Skill Collection

.agents/skills/changelog-video/SKILL.md
.claude/skills/changelog-video/SKILL.md
registry/blocks/canopy-part-title/SKILL.md
registry/blocks/code-slice-hero/SKILL.md
registry/blocks/cuboid-carousel/SKILL.md
registry/blocks/frost-sequence-camera-orbit/SKILL.md
registry/blocks/glass-shard-title/SKILL.md
registry/blocks/orbit-card/SKILL.md
registry/blocks/wireframe-portal-title/SKILL.md
skills/faceless-explainer/SKILL.md
skills/figma/SKILL.md
skills/general-video/SKILL.md
skills/hyperframes-cli/SKILL.md
skills/hyperframes-core/SKILL.md
skills/hyperframes-creative/SKILL.md
skills/hyperframes-keyframes/SKILL.md
skills/hyperframes-registry/SKILL.md
skills/hyperframes/SKILL.md
skills/media-use/SKILL.md
skills/music-to-video/SKILL.md
skills/pr-to-video/SKILL.md
skills/product-launch-video/SKILL.md
skills/reverse-any-video/SKILL.md
skills/slideshow/SKILL.md
skills/talking-head-recut/SKILL.md
.agents/skills/captions-overlay/SKILL.md
.agents/skills/cut-the-curve/SKILL.md
.agents/skills/motion-doctrine/SKILL.md
.agents/skills/oversized-cursor/SKILL.md
.agents/skills/seam-craft/SKILL.md
.claude/skills/captions-overlay/SKILL.md
.claude/skills/cut-the-curve/SKILL.md
.claude/skills/motion-doctrine/SKILL.md
.claude/skills/oversized-cursor/SKILL.md
.claude/skills/seam-craft/SKILL.md
skills/embedded-captions/SKILL.md
skills/hyperframes-animation/SKILL.md
skills/hyperframes-audio/SKILL.md
skills/hyperframes-studio/SKILL.md
skills/motion-graphics/SKILL.md

Metadata

Files
0
Version
34a8d48
Hash
ddd07449
Indexed
2026-07-24 22:18

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-11-03 07:09
浙ICP备14020137号-1