讲师中心 微信公众号
AI工具推荐 视频效率加速

简单动画

Polar Sponsor
爱发电 赞助
.NET 9.0

Remotion 视频自动化生产框架。当用户要求使用 Remotion 创建视频、制作动画视频、生成带解说的视频、创建 Remotion 项目、或涉及 Remotion 视频开发的任何任务时触发此技能。涵盖从项目创建、场景设计、TTS 音频生成、组件开发到最终渲染的完整流程。支持中文 TTS 语音、动画设计、音视频同步和自动质量检查。触发词包括:创建 Remotion 视频、用 Remotion 做视频、视频自动化、Remotion 项目、生成视频、TTS 视频、带解说的视频等。

Remotion 视频自动化生产框架

功能概述

Remotion 视频自动化生产框架是一项面向实际任务的技能,主要用于基于 Remotion 框架的视频自动化生产技能,实现从项目创建到最终渲染的全流程自动化;包含 5 个专门 Agent 角色分工协作、6 阶段标准工作流程、10+ 常见坑预防方案和自动质量检查机制;

核心要点

  • 工作流程决策树;
  • 根据用户需求判断执行路径:;
  • 六阶段标准流程;

使用与执行

Phase 1: observe — 观察阶段(architect);分析用户需求:主题、时长。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

结果检查与注意事项

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

Remotion 视频自动化生产框架

概述

基于 Remotion 框架的视频自动化生产技能,实现从项目创建到最终渲染的全流程自动化。 包含 5 个专门 Agent 角色分工协作、6 阶段标准工作流程、10+ 常见坑预防方案和自动质量检查机制。

工作流程决策树

根据用户需求判断执行路径:

用户请求创建 Remotion 视频
│
├─ 1. 全新项目 → 执行完整六阶段流程(observe → define → execute → integrate → verify → render)
│
├─ 2. 已有项目修改 → 根据修改内容选择对应 Agent:
│   ├─ 修改场景/组件 → designer(Phase: execute)
│   ├─ 添加/修改音频 → audio_engineer(Phase: integrate)
│   ├─ 修复问题 → quality_inspector → 对应 Agent
│   └─ 重新渲染 → render_engine(Phase: render)
│
└─ 3. 仅咨询/问答 → 直接回答,引用 references/ 中的知识

六阶段标准流程

Phase 1: observe — 观察阶段(architect)

  1. 分析用户需求:主题、时长、场景数量、是否需要音频、特殊要求
  2. 检查环境依赖:
    node --version && npm --version
    python3 --version  # 可选,TTS 需要
    ffmpeg -version    # 可选,音频处理需要
    
  3. 确定技术方案和依赖列表
  4. 向用户确认需求理解

Phase 2: define — 定义阶段(designer)

  1. 设计视频结构:场景列表、每个场景时长
  2. 创建项目结构:
    mkdir -p src public/audio
    npm init -y
    npm install remotion @remotion/cli react react-dom
    npm install -D @remotion/player @types/react @types/react-dom typescript
    
  3. 创建 tsconfig.json 和 src/Root.tsx 入口文件
  4. 规划时间轴和组件架构

Phase 3: execute — 执行阶段(designer)

  1. 创建各场景 React 组件

  2. 实现动画效果(使用 spring()、interpolate())

  3. 严格遵守以下关键规则:

    致命规则(必须遵守):

    • 统一坐标系 — 所有相关 SVG 元素必须在同一个 容器内
    • 组件引用验证 — 修改 Root.tsx 后立即确认导入路径正确
    • 时间计算使用 fps — const duration = fps * seconds,不使用硬编码数字
    • 使用 useVideoConfig() — 获取视频尺寸做响应式布局

    机械/物理动画正确性规则(当涉及物理对象动画时必须遵守):

    • 齿轮统一模数系统 — 所有啮合齿轮必须共享同一个 module(模数)= 2 * pitchRadius / teeth。齿轮的 outerRadius/innerRadius 必须由 module 和 teeth 自动计算得出(addendum=module, dedendum=1.25*module),不能随意手写。违反此规则会导致齿大小不同,物理上无法啮合
    • 齿形对称性 — 齿轮路径生成的齿顶宽度和齿根宽度应接近 1:1(标准齿轮为 50/50),不能让齿顶只有齿距的 30%(会导致齿太窄,无法和对方的齿槽匹配)
    • 啮合相位偏移 — 两个啮合齿轮的从动轮必须偏移半个齿距。关键:SVG rotate() 用度数,不是弧度! 必须用 180 / drivenTeeth(度),不能用 Math.PI / drivenTeeth(弧度)。弧度值被当成度数处理会导致偏移只有正确值的 1/57,几乎等于没有偏移
    • 角度/弧度单位一致性 — 任何涉及旋转的计算,必须确认全程使用同一单位。SVG rotate()、CSS transform rotate() 用度数;Math.sin/cos 用弧度。如果 driverRotation 是度数(如 localFrame * 1.2),则 phaseOffset 也必须是度数
    • 啮合间距 = 节圆半径之和 — 两个啮合齿轮的圆心距必须由 pitchRadius 计算得出,不能硬编码
    • 物理动画清单 — 编写完所有涉及物理对象(齿轮、杠杆、连杆、滑轮等)的组件后,必须逐场景确认:每个运动副的初始位置、旋转方向、相位关系、齿形比例是否在物理上正确。这一步在 TypeScript 编译检查之前执行
  4. 运行 TypeScript 检查:npx tsc --noEmit

Phase 4: integrate — 集成阶段(audio_engineer)

  1. 编写各场景的音频脚本文本
  2. 使用 Edge-TTS 生成音频(详见 references/tts-guide.md)
  3. 获取每个音频文件的精确时长:
    ffprobe -v error -show_entries format=duration -of csv=p=0 public/audio/title.mp3
    
  4. 集成音频到视频组件:
    import { staticFile, Audio } from 'remotion';
    // 正确: 使用 staticFile() 包装路径
    
  5. 根据音频时长调整视频总帧数:
    const totalFrames = Math.ceil(totalAudioDuration * fps);
    

Phase 5: verify — 验证阶段(quality_inspector)

执行质量门禁检查:

检查项 命令/方式 严重级别
TypeScript 编译 npx tsc --noEmit 致命
依赖完整性 npm list --depth=0 致命
预览显示 启动预览视觉确认 致命
音频文件存在 ls public/audio/*.mp3 警告
音频时长 ffprobe public/audio/*.mp3 警告
音视频同步 对比音频时长和视频帧数 致命
物理动画正确性 逐场景审查运动副参数(见下方清单) 致命

物理动画正确性检查清单(当视频包含齿轮、杠杆、连杆等物理对象时必查):

  1. 扫描所有场景组件代码,识别是否存在物理对象动画
  2. 对每个运动副(啮合、铰接、滑动等),验证:
    • 单位一致性:所有角度计算是否统一使用度数(SVG)或弧度(Math),绝不混用。常见陷阱:Math.PI 返回弧度但被当作度数传给 SVG rotate()
    • 初始相位:从动件在 rotation=0 时是否处于正确初始位置(如齿轮的半个齿距偏移)
    • 空间间距:两个配合件的圆心距/接触点是否由它们的几何参数计算得出,而非硬编码
    • 传动关系:从动件的运动公式是否同时包含「速比」和「方向」两个要素
  3. 如发现任何硬编码的位置参数、缺失的相位偏移、或单位混用,在渲染前修复
  4. 渲染验证帧:渲染至少一帧静态截图,用视觉模型(如支持)或程序化分析确认物理动画正确

Phase 6: render — 渲染阶段(render_engine)

  1. 停止预览服务器
  2. 执行渲染:
    npx remotion render src/index.ts  out/output.mp4
    
  3. 验证输出文件:
    ffprobe out/output.mp4
    

关键避坑规则

创建和修改 Remotion 项目时,必须遵守以下规则,避免常见致命错误:

  1. staticFile() 包装 — 所有 public/ 目录下的资源必须使用 staticFile() 包装,路径相对于 public/ 目录,不包含 public 前缀
  2. 单一 SVG 容器 — 相关的 SVG 元素必须在同一个 标签内,避免多个独立 SVG 导致坐标错位
  3. Root.tsx 引用验证 — 每次创建或重命名组件后,必须检查 Root.tsx 中的导入路径
  4. 时长类型安全 — 音频时长使用 number 类型,不使用字符串;使用 Math.ceil() 向上取整
  5. 预览确认 — 每次代码修改后必须在预览中视觉确认

详细的问题描述和代码示例见 references/common-pits-and-solutions.md。

资源文件

references/

按需加载到上下文的参考文档:

  • agent-roles.md — 5 个 Agent 角色的详细定义、职责、任务清单和检查点
  • common-pits-and-solutions.md — 10+ 个常见坑的详细症状、原因、代码示例和解决方案
  • workflow-phases.md — 六阶段工作流程的详细步骤和成功标准
  • tts-guide.md — Edge-TTS 安装、配置、中文音色列表、语速调节和故障排除
  • physical-animation-verification.md — ⭐ 物理动画验证检查范例(实战沉淀):齿轮啮合四层 bug 剖析、通用验证四步流程(参数溯源→单位追踪→程序化验证→渲染帧确认)、Python 诊断脚本模板、扩展到其他物理对象的检查映射表

scripts/

可直接执行的脚本:

  • generate-tts-audio.py — 使用 Edge-TTS 生成中文 TTS 音频文件,自动生成 audio-durations.json 时长配置
  • setup.sh — 环境配置脚本,检查依赖、创建目录结构、安装 Node.js 依赖
  • verify.sh — 验证脚本,检查项目结构、依赖安装、TypeScript 编译、音频文件等

实战示例

示例 1:创建全新视频项目

用户说:"用 Remotion 创建一个关于量子计算的介绍视频,需要中文解说"

执行流程:

  1. architect 分析需求:主题=量子计算,需要 TTS
  2. designer 创建项目结构、设计 3-5 个场景
  3. designer 开发各场景组件
  4. audio_engineer 编写脚本、生成 TTS 音频、集成音频
  5. quality_inspector 执行全部质量检查
  6. render_engine 渲染最终视频

示例 2:为已有项目添加音频

用户说:"给这个 Remotion 视频加上中文语音解说"

执行流程:

  1. 检查现有项目结构
  2. 编写音频脚本
  3. 运行 generate-tts-audio.py 生成音频
  4. 在组件中添加 组件
  5. 根据音频时长调整视频时长
  6. 验证和渲染

示例 3:修复问题

用户说:"视频预览里元素位置对不上"

检查方向(引用 references/common-pits-and-solutions.md):

  1. 检查是否多个独立 SVG → 统一到单一 SVG 容器
  2. 检查 Root.tsx 组件引用是否正确
  3. 在预览中视觉确认修复效果
目录

热门AI工具

更多
DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Lovart
Lovart Hot

一款面向视觉设计创作的AI设计平台,可通过智能体和画布工作流辅助制作海报、Logo、网页、PPT及其他视觉内容。

Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

二狗PPT
二狗PPT Hot

一款AI演示文稿工具,主要用于专为中式职场打造的AI PPT生成工具,适合需要提升相关任务效率的用户。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

相关专题

更多
Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

0

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

0

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

0

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

0

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

0

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

0

2026.10.22

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

0

2026.10.22

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

0

2026.10.22

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

0

2026.10.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn