用途
record-promo 用于为 Phaser 游戏自动录制宣传视频,生成适合社交媒体(如 TikTok、Reels、Moltbook、X)发布的高帧率、流畅的游戏画面。整个录制过程无需人工输入,完全自主完成。
主要能力
- 自主捕获游戏画面,无需人工操作。
- 输出 50 FPS 的 MP4 视频,默认分辨率为 1080×1920(9:16 移动竖屏)。
- 默认录制时长为 13 秒游戏时间。
- 自动屏蔽游戏中的死亡/失败代码路径,确保录制过程不会中断。
- 根据游戏实际控制生成输入序列,模拟真实操作。
- 包含入场动画暂停(1-2 秒)。
- 录制完成后提取第 5 秒的缩略图供预览,并报告视频时长、帧率和文件大小。
使用方式
-
前置检查:确认开发服务器是否运行(通过
curl -s http://localhost:3000/检查),若未运行则使用npm run dev在后台启动并记录端口;检查 Playwright 是否安装(npx playwright --version),若未安装则执行npm install -D @playwright/test && npx playwright install chromium;检查 FFmpeg 是否可用(ffmpeg -version | head -1),若未找到则提示用户安装(macOS 上使用brew install ffmpeg)并停止。 -
生成捕获脚本:加载 promo-video 技能以获取完整技术参考。读取游戏源码文件以理解游戏结构,包括
src/scenes/GameScene.js(查找死亡/失败方法以便屏蔽)、src/core/EventBus.js(事件流)、src/core/Constants.js(输入按键、游戏尺寸)、src/main.js(验证__GAME__和__GAME_STATE__全局变量是否暴露)。创建针对该游戏的scripts/capture-promo.mjs,屏蔽所有死亡/失败代码路径,生成与游戏实际控制匹配的输入序列,包含入场动画暂停(1-2 秒),默认视口 1080×1920(9:16 移动竖屏),默认时长 13 秒游戏时间。 -
复制转换脚本:执行
cp <plugin-root>/skills/promo-video/scripts/convert-highfps.sh <project-dir>/scripts/和chmod +x <project-dir>/scripts/convert-highfps.sh。 -
运行捕获:执行
mkdir -p output、node scripts/capture-promo.mjs --port <port>、bash scripts/convert-highfps.sh output/promo-raw.webm output/promo.mp4 0.5。 -
验证与预览:使用
ffmpeg -y -ss 5 -i output/promo.mp4 -frames:v 1 -update 1 output/promo-thumbnail.jpg提取第 5 秒的缩略图并展示给用户,报告视频时长、帧率和文件大小。
适用场景
- 为 Phaser 游戏快速生成社交媒体宣传视频。
- 需要无人值守、自动化录制游戏画面的场景。
- 制作适合移动端竖屏观看的短视频内容。
限制
- 仅适用于 Phaser 游戏。
- 需要预先安装 Playwright 和 FFmpeg。
- 需要游戏源码可访问,以便读取场景、事件总线和常量文件。
- 需要游戏暴露
__GAME__和__GAME_STATE__全局变量。 - 默认输出为 1080×1920 竖屏,13 秒时长,50 FPS,这些参数可能可调整但资料未明确说明。
- 关于收费、价格、平台兼容性等更多信息暂未提供。