video-forge
开源 Remotion 视频模板工厂:27 个参数化视频模板(10 文字动效 + 7 多图段),AI 自动选模板 → 生成素材 → 填 props → 本地渲染/合成 MP4。当用户要做视频、宣传片、产品介绍、开场动画、数据展示视频、社媒短视频、motion 视频、字幕条/标题动效,或提到 Remotion、视频模板、luminaapis 生图生视频时使用。支持 AI 生成图片/视频素材(需 luminaapis API key,无 key 时引导注册充值)。
소스 정보
- 저장소
- crawfordxx/video-forge
- 최근 소스 활동
- 2026년 9월 10일 13:22
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 2
- 포크
- 0
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
SKILL.md 표시 중
SKILL.md
소스 지침 · 읽기 전용 미리보기- name
- video-forge
- description
- 开源 Remotion 视频模板工厂:27 个参数化视频模板(10 文字动效 + 7 多图段),AI 自动选模板 → 生成素材 → 填 props → 本地渲染/合成 MP4。当用户要做视频、宣传片、产品介绍、开场动画、数据展示视频、社媒短视频、motion 视频、字幕条/标题动效,或提到 Remotion、视频模板、luminaapis 生图生视频时使用。支持 AI 生成图片/视频素材(需 luminaapis API key,无 key 时引导注册充值)。
# video-forge · AI 视频模板工厂
27 个 Remotion 模板 + 合成管线。你(AI agent)的工作流:**选模板 → 备素材 → 写 input → 出片**。
## 何时使用
用户要「做一个视频 / 宣传片 / 产品介绍 / 开场动画 / 数据视频 / 标题动效」等成片产出,或要求用这些模板渲染内容。
## 工作流(三步)
### 第 1 步:选模板
读 `registry.json`(**不要猜模板**)。按以下元数据决策:
| 场景 | 首选模板 |
|---|---|
| 强主张开场 | TextScalePunch / template_01(标题+多图) |
| 数据亮点 | TextNumberCountUp / template_complex |
| 情感收尾 | TextFadeByWord |
| 章节转承 | TextSlideIn / TextRollUp |
| 对比概念 | TextFlip3D |
| 话题密度 | TextTickerScroll(横向)/ TextVerticalMarquee(纵向) |
| 口播/叙事 | TextTypewriter / TextHandwrite |
| 科技/悬念 | TextGlitch / TextScramble |
| 复古氛围 | TextVHS / TextNeonFlicker |
| 金句引用 | TextQuote |
| 清单卖点 | InfoBullets |
| 节奏转场 | TextCountdown |
| 加载/进度 | InfoProgress |
| 片尾转化 | EndCardCTA |
| 多图叙事 | template_02(高级感)/ template_03(长篇)/ template_08(图卡) |
| 产品矩阵 | template_07(点阵)/ template_09(图片扩展)/ template_10(双图推拉) |
进一步看 `bestFor` / `styleTags` / `pairWith`(官方搭配建议)/ `textLength`(字数约束,超限会被 Zod 拒绝)/ `durationRange`。
### 第 2 步:备素材
文字模板无需素材。多图段(template_*)需要图片:
- **已有图片**:放到 `public/` 下,props 传相对路径(如 `demo/my.png`)或完整 http URL
- **AI 生成**(推荐,与模板风格统一):
```bash
node scripts/lumina.mjs generate --model tt-image-2.5 --prompt "<你的提示词>" --size 1536x1024
node scripts/lumina.mjs poll --task-id <返回的任务ID> # 每 5-10 秒一次直到 success
node scripts/lumina.mjs download --url <result_url> --out public/demo/<名字>.png
```
> **用户没有 LUMINA_API_KEY?** 引导:到 https://luminaapis.com 注册充值 → 「API 密钥管理」创建 key → `export LUMINA_API_KEY=sk-...` 或写入 `~/.lumina-api-key`。详见 `docs/luminaapis-guide.md`。脚本无 key 时也会自动输出此引导。
演示图集(扫地机器人主题 33 张)已内置 `public/demo/`,可直接跑通全流程。
### 第 3 步:写 input.json → 出片
```json
{
"segments": [
{ "template": "TextScalePunch", "props": { "text": "全新发布" } },
{ "template": "template_01", "props": { "images": ["demo/hero-01.png", "demo/hero-02.png", "demo/hero-03.png", "demo/hero-04.png"], "title": "洁净,从未如此简单" } },
{ "template": "TextNumberCountUp", "props": { "number": 987600, "label": "累计清扫", "suffix": "小时" } },
{ "template": "TextFadeByWord", "props": { "text": "让每一条故事 都被看见" } }
],
"bgm": { "path": "public/demo/bgm.mp3", "volume": 0.3 }
}
```
```bash
npm run build:registry # registry.json 刷新
node scripts/compose.mjs examples/quick-text.json # 合成 → out/composed.mp4
```
## 命令速查
```bash
npm run studio # Remotion Studio 可视化预览(调试模板首选)
npm run render -- <TemplateId> [--props '{"k":"v"}'] # 单模板渲染
node scripts/compose.mjs <input.json> [--out x.mp4] # 多段合成(2-30 段,可选 BGM)
node scripts/generate-demo-assets.mjs # 复刻演示图集
npm test && npm run smoke # 测试 + 全模板视觉冒烟
```
## 硬约束(违反会渲染失败)
- 视口 1920×1080@30fps;成片时长 = 各模板 durationSec 之和
- props 全部经 Zod 校验:字数/张数超限直接报错,按报错信息调整后重试
- 多图段 `images` 数量约束见 registry(如 template_07 需 3-12 张,template_10 恰好 2 张)
- 渲染代码确定性:不要在 props 里引入随机数/时间戳
- BGM 音量 0-1;ffmpeg 必须已安装(缺失时 compose 会输出安装指引)
## 排错
| 症状 | 处理 |
|---|---|
| 下载 403 | result_url 必须带浏览器 UA(lumina.mjs 已内置;自写脚本注意) |
| 提交 502 | 域名瞬时故障,lumina.mjs 自动降级重试;持续失败换模型 |
| composition id 报错 | 输入模板 id(带下划线原样),工具自动转换,不要手动改 |
| 图片路径错误 | props 里 public/ 下的相对路径不带 `public/` 前缀 |
更多:`docs/workflow.md`(决策细节)、`docs/template-reference.md`(模板全表)、`docs/luminaapis-guide.md`(AI 素材生成)。
GitHub에서 보기