关于 video-motion-previs
video-motion-previs 是用于操作 Motion Previs Studio v4 的技能,面向参考视频分析和制作包生成流程。它通过命令行控制正在运行的应用,并提供分阶段操作及结果校验;分析和导出仍由应用负责。
主要功能
- 01导入本地视频或 URL
- 02设置片段范围与分析模式
- 03启动分析并等待完成
- 04导出并检查制作包
- 05检查应用连接与状态
适用场景
- 01分析一段参考视频
- 02按指定时间范围处理镜头
- 03检查导出包中的文件和质量报告
MCP 相关
技能可直接使用命令行操作 Motion Previs Studio,也说明如何配置上游 MCP bridge。bridge 自动发现端口和令牌,但应用仍须运行。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ akillness/ jeo-skills --skill video-motion-previs安装后在 Claude Code 中输入/video-motion-previs确认已加载。
附带文件scripts/video-motion-previs.mjs
详细介绍
视频动作预演
使用轻量级 video-motion-previs 封装来操作真正的 Motion Previs Studio v4 控制 API。该封装会读取应用仅限本机访问、受令牌保护的发现描述文件,并调用与上游 MCP 桥接程序相同的允许列表操作。
何时使用此技能
在进行参考视频分析和 Motion Previs Studio 制作包处理时使用此技能。纯 Blender 场景脚本编写应转交给 Blender 技能,ComfyUI 图表编写应转交给 AI 视频/ComfyUI 技能,网页动画性能优化应使用 optimize-web-animations,一般视频剪辑应使用 video-production。
这不是完全无头的渲染器。运行中的 Electron 应用负责 MediaPipe、ffmpeg、界面状态、分析和导出。CLI 是控制界面,并非分析引擎的替代品。
说明
1. 安装前检查
在此技能目录中:
node scripts/video-motion-previs.mjs check
JSON 结果会区分:
- macOS 上
/Applications或~/Applications中的打包安装; - 来自
MOTION_PREVIS_SOURCE或常见本地路径的源代码检出; - 具有正常运行的 protocol-v1 控制服务器的应用;
- Node/平台不兼容以及过期的发现文件。
默认情况下,不要重新安装已正常运行的现有应用。Motion Previs Studio 生成的 MediaPipe/模型/运行时资源相对较大,因此请保持安装操作幂等。
2. 仅在需要时安装
node scripts/video-motion-previs.mjs install
安装策略:
- **macOS Apple Silicon:**使用已检查的官方上游安装程序和最新 arm64 版本。仅当要用打包应用替换可用的源代码检出时,才传入
--packaged。 - **Windows 11 x64:**CLI 会报告官方最新版本的安装程序 URL;由于上游 NSIS 安装程序未签名且需要交互,安装过程仍会显示给用户。
- **Linux 或 Intel macOS:**使用
install --source [DIR]克隆源代码、运行npm ci,并准备经过固定 SHA-256 校验的运行时资源。Linux 仍需按上游文档的说明,通过显式的 ffmpeg/ffprobe 运行时覆盖设置或 PATH 配置来提供这些工具。
上游安装程序会移除并替换现有的 Motion Previs Studio v4.app,因此没有用户明确要求时,切勿强制执行。
如需在整个终端中使用,请将封装本身安装到 PATH 中:
node scripts/video-motion-previs.mjs link
video-motion-previs check
3. 启动并验证连接
video-motion-previs launch
video-motion-previs state
video-motion-previs screenshot /tmp/motion-previs.png
launch 会复用正常运行的应用(如有)、打开打包应用(如有),或启动已准备好的源代码检出。state 始终是第一个动作命令。它会确认已加载的媒体、范围、模式、分析状态、设置、上一个数据包以及 Blockout 是否可用。
如果描述文件存在但健康检查失败,请退出并重新启动应用。描述文件通常位于:
- macOS/Linux:
~/.config/motion-previs/control.json - Windows:
%APPDATA%\Motion Previs Studio\v4\control.json - 覆盖设置:
MOTION_PREVIS_CONFIG_DIR或MPS_CONFIG_DIR
切勿在报告或已提交的文件中打印或保存 bearer 令牌。
示例
4. 通过 CLI 操作单个镜头
如果各阶段之间需要人工审核,请使用明确的命令:
video-motion-previs import-file "/absolute/path/to/shot.mp4"
video-motion-previs set-range 0 3
video-motion-previs set-mode camera_only
video-motion-previs set-settings '{"sampleFps":6,"resolution":"720p"}'
video-motion-previs analyze
video-motion-previs wait --timeout 900
video-motion-previs export
video-motion-previs list-bundle
如果所有输入都已获批准,请使用有界工作流:
video-motion-previs workflow "/absolute/path/to/shot.mp4" \
--start 0 --end 3 --mode camera_only --sample-fps 6 --timeout 900
可以使用 URL 代替本地路径。Motion Previs Studio 会将兼容的视频下载任务委托给 yt-dlp:
video-motion-previs workflow "https://example.com/reference-video" \
--start 2 --end 7 --mode actor_motion
有效模式包括 camera_only、actor_motion、object_motion 和 full_scene。上游接受的设置包括 sampleFps、maxPeople、smoothing、detectionConfidence、trackingConfidence 和 resolution(auto 或 720p)。时间单位为秒。
5. 仅在高级自动化时使用原始操作
video-motion-previs call get_state '{}'
video-motion-previs call send_to_blockout '{"which":"openpose"}'
上游 v4.1 控制界面有 11 个允许列表操作:
get_state、import_file、import_url、set_range、set_mode、set_settings、run_analysis、export_pack、list_bundle、send_to_blockout 和 screenshot。
如果使用 MCP 客户端而非直接通过 CLI 控制,请将其指向上游的零依赖桥接程序:
claude mcp add motion-previs -- node "/ABSOLUTE/PATH/motion-previs-studio/mcp/motion-previs-mcp.mjs"
应用仍必须处于运行状态。桥接程序会自动发现端口和令牌。
最佳实践
6. 验证输出,而不是假设成功
export 后,必须确认返回了资源包路径,并且 list-bundle 执行成功。根据所选控件和本地模型的可用情况,资源包可能包含 reference.mp4、深度/边缘/线稿/运动/姿势视频、openpose_keypoints.json、camera_motion.json、Blender 导入脚本、comfyui_manifest.json、提示词/镜头圣经文件、质量报告和 bundle_manifest.json。
验证关卡:
- 导出前,
state报告analysis.status: "done"。 export返回bundlePath和zipPath。list-bundle与请求的控件相符;不保证一定包含可选层。- 下游生成前,检查
bundle_manifest.json和quality_report.json。 - 处理长视频片段前,先测试 3–5 秒的短片段。
故障排除
- **应用未运行:**运行
launch,等待state,然后重试。 - **描述符过期:**完全退出打包版本和源码版本,且只移除过期的
control.json,然后重新启动。 - **未加载媒体:**分析前运行
import-file或import-url。 - **导出提示没有已完成的分析:**使用
wait轮询,直到状态为done;状态为running或error时不要导出。 - **姿势效果不佳:**缩短片段范围、提高主体的可见度、在诊断过程中降低采样成本,并检查质量/姿势诊断信息。
- **相机解算跟随主体移动:**比较
camera_only和full_scene;解算器使用主体遮罩后的背景光流。 - **深度不可用:**使用支持的 CPU/WASM 回退方案,或在导出时不包含该可选层。
- **Blockout 不可用:**启动 Blockout,并打开其目标项目,然后再运行
send-to-blockout。
参考资料
此工作流已对照上游 v4.1.0 的提交 95e7d0ff1d4cc546f7eb09a74ccbd084988a19bc 进行检查。验证范围包括 README.md、package.json、install.sh、mcp/README.md、mcp/motion-previs-mcp.mjs、electron/control.cjs 和 src/control/handler.ts。重新分发应用时,请保留上游的 LICENSE、NOTICE 和第三方署名信息。