mcpField
I
import-canvas-capture

import-canvas-capture

github.com/remotion-dev创意与媒体68.6k131 次安装今天更新
代码仓库

关于 import-canvas-capture

这是 Remotion 的内部不稳定工作流,可将画布录制导入项目并生成合成。它适用于需要从录制元数据创建组件、注册项和公共资源的仓库工作流。

主要功能

  1. 01将录制元数据导入合成
  2. 02生成并注册组件
  3. 03将录制复制到公共资源目录
  4. 04覆盖合成尺寸和帧率
  5. 05通过 dry-run 预览更改

适用场景

  1. 01将画布录制添加到 Remotion 项目
  2. 02不写入文件地检查拟议源码更改

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/remotion-dev/remotion --skill import-canvas-capture

安装后在 Claude Code 中输入/import-canvas-capture确认已加载。

详细介绍

导入 Canvas Capture

这是一个内部且不稳定的工作流。请将此技能保留在 .agents/skills 中; 不要通过 packages/skills 分发,也不要将此命令记载为稳定 API。

工作流

  1. 找到录制的捕获文件和目标 Remotion 项目。原始录制必须包含嵌入的 REMOTION_CAPTURE_DATA 元数据;丢失此元数据的转换后视频无法导入。

  2. 检查项目,找到包含其合成注册信息的 TypeScript 文件 (通常是 src/Root.tsx)。选择一个未使用的合成 ID。

  3. 在目标项目的根目录中运行:

    bunx remotion experimental-codemod add-canvas-capture /absolute/path/capture.webm \
      --composition-file src/Root.tsx \
      --id MyCapture
    

    在 monorepo 中开发此命令时,请先使用 bun run build 构建 CLI,然后从目标项目的根目录调用本地 CLI:

    node /absolute/path/to/remotion/packages/cli/remotion-cli.js \
      experimental-codemod add-canvas-capture /absolute/path/capture.webm \
      --composition-file src/Root.tsx --id MyCapture
    
  4. 检查报告的源文件和公共资源。导入器会在注册文件旁生成一个组件并注册它, 将视频复制到公共目录,并在项目使用的 Remotion 版本中安装缺失的 @remotion/media 和 @remotion/mac-cursors 依赖项。无需运行 Studio。 已有的 Studio 会话会通过文件监视器获取源代码更改;此操作不会进入 Studio 的撤销记录。

  5. 向用户报告合成 ID 和已更改的文件。

选项和冲突

  • 默认值与 Studio 的捕获导入设置一致:1920×1080、60 fps,时长向上取整为录制时长。 传入 --width、--height 或 --fps 可覆盖这些值。 录制视频尺寸与合成尺寸互不影响。
  • --public-dir 可覆盖已配置的公共目录。--package-manager 用于选择依赖安装器。
  • --dry-run 会解析录制内容并生成源代码更改,但不会安装依赖项或写入项目文件。 程序化结果中包含拟议的源代码更改。
  • 注册文件路径相对于项目根目录解析;CLI 捕获文件路径相对于当前工作目录解析。
  • 如果组件文件已存在或公共资源发生冲突,操作将被拒绝。如果录制文件已位于公共目录中, 请将该文件作为输入传入以便复用。否则,请重命名输入文件或选择其他合成 ID; 不要为了绕过错误而覆盖现有资源或组件。

程序化访问

使用 @remotion/cli 中的 CliInternals.importCanvasCapture。此接口为内部接口, 且不稳定。其输入包括 captureFile、compositionFile、compositionId、 remotionRoot、publicDir、fps、width、height、packageManager、 logLevel 和 dryRun。默认目录、尺寸、帧率和包管理器请传入 null。 文件路径相对于 remotionRoot 解析。

结果包含合成 ID、源文件和资源路径、合成元数据以及 codemod 更改。 传入 dryRun: true 可在内存中检查更改。

评论

支持 Markdown