关于 update-remotion-rust-ffmpeg
update-remotion-rust-ffmpeg 是用于更新 Remotion Rust FFmpeg 依赖并重建合成器构件的仓库技能,涵盖验证、创建草稿拉取请求及汇报更新结果。
主要功能
- 01验证提供的上游提交 SHA
- 02更新 Cargo 依赖和锁定文件
- 03跨目标重建合成器二进制文件
- 04验证 Windows 运行时导入项
- 05创建草稿拉取请求
适用场景
- 01更新 Remotion 的 rust-ffmpeg
- 02重建合成器发布构件
- 03准备并验证依赖更新拉取请求
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ remotion-dev/ remotion --skill update-remotion-rust-ffmpeg安装后在 Claude Code 中输入/update-remotion-rust-ffmpeg确认已加载。
附带文件agents/openai.yaml
详细介绍
更新 Remotion Rust FFmpeg
需要来自 $update-rust-ffmpeg-sys 的完整已发布 rust-ffmpeg commit SHA。
提交或创建 pull request 前,请阅读 ../pr/SKILL.md 和 ../pr-name/SKILL.md。
准备工作树
在专用 Remotion 工作树的 codex/update-rust-ffmpeg 分支上运行。切勿在主 /Users/jonathanburger/remotion 检出目录中执行此工作。
获取 origin。如果该分支还没有发布提交,则将其快进到 origin/main。不要变基、重置或覆盖无关工作。
允许此技能自身已跟踪的 .agents/skills/update-remotion-rust-ffmpeg 文件保持不变。若存在任何未明确属于所请求 pull request 的预先更改,请停止。
验证提供的完整 SHA 可从 remotion-dev/rust-ffmpeg 的 main 分支访问。读取该提交的 Cargo.toml,并记录准确的 ffmpeg-sys-next 版本修订,以便稍后验证锁文件。
更新 Cargo 并重建产物
仅将 packages/compositor/Cargo.toml 中的 ffmpeg-next.rev 值更改为提供的完整 SHA。在 packages/compositor 目录中运行:
cargo update -p ffmpeg-next
在 Cargo.lock 中验证:
ffmpeg-next解析到提供的rust-ffmpegSHA;ffmpeg-sys-next解析到记录的rust-ffmpeg-sysSHA。
安装工作区依赖,不要更改锁文件:
bun install --frozen-lockfile
如果 packages/compositor/toolchains 不存在,则安装交叉编译工具链:
cd packages/compositor
bun install-toolchain.ts
bun run build-all
所有平台的构建都必须成功完成,目标包括 Windows x64 GNU、macOS ARM64/x64,以及 Linux ARM64/x64 GNU/musl。在 macOS 上,运行构建前确保有面向 MSVCRT 的 x86_64-w64-mingw32-gcc 链接器可用;不要使用默认面向 UCRT 的工具链。此构建会更新平台包中的 remotion 可执行文件以及 FFmpeg 共享库/CLI 文件。不要用仅面向本机的构建替代。
从仓库根目录运行:
bun run build
bun run stylecheck
git diff --check
检查差异。差异可能包含:
packages/compositor/Cargo.toml和packages/compositor/Cargo.lock;- 六个
packages/compositor-{darwin,linux}-*平台包以及packages/compositor-win32-x64-msvc下的重建文件。
如果无关的已跟踪文件发生更改,请停止。确认 Windows compositor 包已更改,包括 remotion.exe 和更新后归档中的 FFmpeg 文件。运行 objdump -p packages/compositor-win32-x64-msvc/remotion.exe:必须包含 msvcrt.dll,且不得导入 api-ms-win-crt-* 或 ucrtbase.dll。
提交、推送并创建 PR
提交前,检查当前分支是否已有 pull request。如果存在,请报告并停止,不要重复创建或改写。
仅暂存两个 Cargo 文件、七个重建后的 compositor 平台包、packages/compositor/build.ts,以及对此技能的任何有意更新。使用以下提交和 PR 标题:
`@remotion/compositor`: Update rust-ffmpeg and rebuild binaries
执行一次 git push -u origin HEAD。切勿强制推送。如果推送被拒绝,请停止并报告。
将简洁的 PR 正文写入临时 Markdown 文件。正文应包含完整的 rust-ffmpeg 和 rust-ffmpeg-sys SHA、交接信息中如有提供的 splitter 源 SHA、七个重建目标以及验证结果。使用 gh pr create --draft --body-file 创建以 main 为目标分支的草稿 PR;不要以内联方式传入正文。
完成更新链
报告 PR URL、分支、交接信息中提供的全部三个源提交 SHA、重建目标和验证结果。没有下一个仓库;多仓库更新链已完成。