mcpField
R
rn-motion-replica

rn-motion-replica

github.com/pluviobyte创意与媒体1.7k214 次安装5 周前更新
代码仓库

关于 rn-motion-replica

rn-motion-replica 指导创作者将获准使用的参考视频改编为可编辑的原创动态研究,并通过逐帧证据、确定性动画和成片检查控制制作质量。

主要功能

  1. 01分析参考视频并记录视觉规则
  2. 02制作带时间戳的分镜与布局
  3. 03构建确定性的 HyperFrames 动画
  4. 04检查关键帧并验证渲染后的 MP4
  5. 05整理可复用项目文件和质检证据

适用场景

  1. 01用原创文案和素材重现视频节奏
  2. 02根据公开参考制作可编辑的动态研究
  3. 03交付前检查转场和时间安排

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/pluviobyte/rnskill --skill rn-motion-replica

安装后在 Claude Code 中输入/rn-motion-replica确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
assets/templates/box-motion-hyperframes/
frame.md
hyperframes.json
index.html
meta.json
package.json
STORYBOARD.md
references/
box-motion-pattern.md
qc-checklist.md
scripts/
analyze_reference.py
init_motion_project.py

详细介绍

RN Motion Replica

将参考片段转化为原创动态研究作品,在保留视觉表达方式和节奏的同时,替换原作中的文案、演示者、素材片段和独有资产。

此 Skill 面向可编辑的原创改编。任何像素级精确、渲染帧精确或编码帧对齐的声明,都必须经过 rn-replica-qc 及其资产、运行时和交付审核关卡。

来源与权利边界

  • 仅使用用户有权使用的公开链接或本地文件。
  • 不得绕过私人账户限制、DRM、付费墙或已删除的媒体。
  • 将来源 URL、标题、下载的媒体、文字稿和来源截图保存在私有工作目录中。
  • 不得将来源媒体放入最终项目或 Skill 包中。
  • 重现运动结构、布局逻辑、节奏和交互表达方式。编写新文案,并使用原创或通用资产。

工作流

1. 确定研究范围

明确具体时间范围、所需效果、交付宽高比,以及用户需要的是研究预览还是完整制作资产。如果请求已经足够具体,无需再次询问。

默认采用参考片段的画布尺寸和 fps,除非用户或目标平台要求其他格式。

2. 获取并验证参考素材

使用工作区可信的下载器或 yt-dlp 下载公开参考素材。使用 ffprobe 验证;HTTP 请求成功并不足够。

必须满足:

  • 视频流可播放
  • 时长非零
  • 尺寸和帧率已知
  • 未经修改的源文件保存在私有参考目录中
3. 生成视觉证据

对选定范围运行内置分析器:

python3 scripts/analyze_reference.py <reference.mp4> \
  --start 0 --duration 35 --out <private-analysis-dir>

检查所有生成的联系表和场景帧。不得仅根据一张缩略图推断编排。

记录以下五层证据:

  1. 视觉元素:背景、边框、调色板、字体、阴影、纹理
  2. 几何布局:安全边距、锚点、卡片尺寸、连接线走向、层级顺序
  3. 动效原语:弹出、滑动、路径绘制、交换、推进、模糊、缩放
  4. 序列:什么先出现、什么等待、什么替换先前状态
  5. 时间:入场时长、停留时间、重叠时间、转场时间、最终停留

开始制作动画前,先编写 frame.md 说明视觉规范,并编写 STORYBOARD.md 记录带时间戳的序列。

对于带描边的卡片和直角连接线,请阅读 references/box-motion-pattern.md。

4. 选择制作路径

默认使用 HyperFrames 制作最终视频:

  • 时长约 10 秒或更短、无旁白且以动效为主的镜头:使用 motion-graphics 工作流
  • 状态较多、场景较多或时长较长的复刻作品:使用 general-video
  • 保持原样、只在其上叠加新图形的现有对话镜头素材:使用 talking-head-recut

使用内置的方框动效起始模板:

python3 scripts/init_motion_project.py <new-project-dir>

此模板是可编辑的示例,并非内容规范。请根据当前参考素材的证据,替换其中的标签、时间、颜色和布局。

5. 先搭建布局,再制作动效

先以每个场景最清晰可见的状态构建布局。确认卡片、标签和连接线即使不加动画也能完整显示。

然后按阅读顺序制作动画:

  1. 边框和章节标签
  2. 第一个焦点节点
  3. 下一个端点
  4. 连接可见端点的连接线
  5. 依次显示辅助卡片
  6. 状态交换或场景转场
  7. 清晰易读的最终停留画面

连接线应位于卡片下方。将每条 SVG 连接线和每个交汇点初始化为时间零时隐藏;仅在对应提示点显示。在节点出现前悬浮的连接线或交汇点都属于失败帧。

使用可安全跳转且具有确定性的时间线。不得使用渲染时钟、未设随机种子的随机数、悬停状态或无限循环动画。

6. 验证合成效果

运行框架的完整检查,然后在以下位置截取明确的快照:

  • 开场入口
  • 每次图形或布局状态变化
  • 每次场景过渡前、过渡中和过渡后
  • 最终定格帧

检查渲染后的像素。修复过早出现的元素、空白衔接、连接线交叉、文字裁切、边框不一致以及不符合品牌风格的缓动,然后再渲染完整的 MP4。

7. 渲染并验证最终 MP4

仅当用户请求输出视频或已批准预览时,才进行渲染。

针对 MP4 本身进行渲染后质量检查,而不只是检查 HTML 预览。阅读 references/qc-checklist.md 并保留:

  • 媒体探测 JSON
  • 最终 MP4 联系表
  • 有代表性的开场、状态变化、过渡和最终帧
  • 黑帧扫描结果
8. 交付可复用的软件包

使用以下结构:

<project>/
├── frame.md
├── STORYBOARD.md
├── index.html
├── renders/
│   └── motion-replica.mp4
└── qc/
    ├── media-probe.json
    ├── contact-sheet.jpg
    └── representative-frames/

将原始参考资料和能够识别来源的分析内容放在此交付物之外。

完成门槛

  • 未检查所请求时间范围内的多个时间点前,不要声称匹配。
  • 仅凭此工作流,不要声称像素或帧完全一致;如需完整帧证据,请使用 rn-replica-qc。
  • 除非用户拥有源素材并明确要求复用,否则不要复制源素材中的演示者、字幕、脚本、缩略图或独特品牌资产。
  • 不要让连接线、交汇点或卡片在其时间线提示之前出现。
  • 不要将仅预览正确视为交付;请重新检查最终 MP4。
  • 不要用联系表替代所请求的视频。联系表是质量检查证据,而非交付物。

捆绑资源

  • scripts/analyze_reference.py:生成探测数据、概览和密集联系表,以及场景变化帧。
  • scripts/init_motion_project.py:复制可复用的 HyperFrames 方框动画项目,且不会覆盖现有目录。
  • references/box-motion-pattern.md:卡片、连接线、状态切换和推入式过渡的实现指南。
  • references/qc-checklist.md:渲染前和最终 MP4 验证门槛。
  • assets/templates/box-motion-hyperframes/:初始化程序使用的可编辑源项目。
  • assets/showcases/box-motion-replica-35s.mp4:时长为 35 秒的成品示例。

评论

支持 Markdown