packages/docs/docs/contributing/rust.mdx
:::note As we migrate to the new media tags, we will not add any new Rust code, only maintain the existing code. :::
To participate in the development of the Rust parts of Remotion, you need to do additional steps.
These are entirely optional if you only touch the TypeScript parts.
First, install Cargo, if you don't have it, or upgrade to a version that supports edition-2021:
curl https://sh.rustup.rs -sSf | sh
To build the Rust parts for your operating system, run:
cd packages/compositor
bun build.ts --debug
These instructions currently are for macOS. Contributions for other platforms are appreciated.
To build the Rust binaries for all supported platforms, you need to install their toolchains:
cd packages/compositor
node install-toolchain.ts
You can then build all binaries with:
bun run build-all
The resulting artifacts should be checked into Git.
compositor-darwin-arm64 and a user will only install packages that are specific to their operating system.compositor package by default, unless you compile for all platforms.rust-ffmpeg-splitter repository. They are built in CircleCI as well as on a M1 Macbook and pasted into the rust-ffmpeg-sys project. The rust-ffmpeg-sys project is a dependency of rust-ffmpeg which is a dependency of the main Remotion project. Refer to those repositories to learn how to build them.