← ClaudeAtlas

video-motionlisted

用 Remotion 在真实视频底材上叠加动效图层——字幕跟随、数据柱升起、圈注箭头标注(触发词:视频动效 / 视频加字幕 / 屏录标注 / 把视频做成讲解视频 / Remotion)。素材 + 一份 cues 时间轴声明,一条命令渲染成片。也给 PPT 逐页成片(DeckVideo)与场景化成片(scene-kit 组件直绘动效场景,v2→v3 质感工艺)与视频封面出图(Cover 静态 PNG,触发词:封面图 / 视频封面 / 出封面 / cover)。给录像 / 屏录 / 游戏录像做讲解视频、加字幕、数据动画、产品介绍片或出封面时使用。
TimeCraker/vibe-studio · ★ 0 · Code & Development · score 73
Install: claude install-skill TimeCraker/vibe-studio
# video-motion — 视频底材叠动效(Remotion) **设计即代码**:坐标 / 时刻 / 文本全部声明在 `src/cues.ts`(数据契约,字段不许改),fx 组件零硬编码;改 cues 重跑一条命令即复跑成片。三层动效:字幕 `SubtitleTrack` / 数据柱 `DataBars` / 圈注 `Spotlight`(circle / arrow / box)。 ## Step 1 · 剧本设计(看素材,不猜画面) 1. **抽帧看素材**:`npx remotion still remotion/index.ts FootageOverlay <输出>/f-<n>.png --frame=<n>`,帧号铺开抽 6-8 张;PNG 先复制到 `C:\pc\` 类短路径再读图(反斜杠路径解析坑) 2. **写 `src/cues.ts` 动效剧本**: - **字幕讲画面**:说观众此刻看到的事,每条 ≤2s - **圈注指实物**:circle / arrow / box 指向画面中真实存在且值得注意的元素,坐标先用抽帧核实落点 - **数字要口径**:数据柱数值取真实来源(画面 HUD / 结算面板 / 后台数据),取不到就在字幕标明「演示数据」 3. **通用要求:解读必须下钻到细节层,cue 密度按细节铺满素材,不以大事件凑数**——HUD 数字变化、killfeed、聊天栏、提示条、场景切换都是 cue 素材;「推进 → 交火 → 胜利」三笔带过一条 30 秒素材就是没下钻 ## Step 2 · 工程与规格(随素材自适应) 1. 复制 `templates/remotion-app/` 到工作目录,`npm install`(Remotion 各子包必须同批安装,版本严格联动) 2. **原生规格**:`node scripts/probe-footage.mjs <素材路径>` 用 ffprobe 生成 `src/footage-params.ts`——输出分辨率 / 帧率随素材走,不写死;换素材重跑该脚本即可 3. **素材不进 skill**:渲染带 `--public-dir <素材目录>`(`staticFile` 直读项目素材库);只有不便带参数时才把素材复制为 `public/footage.mp4` 4. cues 按 **1080p 设计坐标**书写,`FootageOverlay` 已内置 `transformOrigin: "top left"` 整体缩放适配任意画布——换分辨率不改 cues,动效落点不漂移 ## Step 3 · 生成(一条命令) ```bash cd <remotion-app> npx remotion render remotion/index.ts FootageOverlay <仓库>/products/<项目名>/demo.mp4 --crf=16 --public-dir <素材目录> ``` 产物住**仓库 `products/<项目名>/`**(目录法:skill 是纯工具,产物不落 skill 内;跨仓库使用时落该项目根 `output/<skill 名>/`);`--crf=16` 高质量。大素材渲染放后台跑(1440p60 × 30s 约 10 分钟),以退出码 + ffprobe 验收,不凭进度条。 ## Step 4 · 三级核查(必做,不可跳) **① 程序**:渲染退出码 0;`npx remo