Server-Side Rendering
Remotion's rendering engine is built with Node.JS, which makes it easy to render a video in the cloud.
Render a video on AWS Lambda
The easiest and fastest way to render videos in the cloud is to use @remotion/lambda
.
Render a video using Node.js APIs
We provide a set of APIs to render videos using Node.js and Bun.
See an example or the API reference for more information.
Render using GitHub Actions
The Hello World starter template includes a GitHub Actions workflow file .github/workflows/render-video.yml
.
1
Commit the template to a GitHub repository.2
On GitHub, click the Actions
tab.3
Select the Render video
workflow on the left.4
A Run workflow
button should appear. Click it.5
Fill in the props of the root component and click Run workflow
. 6
After the rendering is finished, you can download the video under Artifacts
.Note that running the workflow may incur costs. However, the workflow will only run if you actively trigger it.
See also: Passing input props in GitHub Actions
Render a video using Docker
See: Dockerizing a Remotion project
Render a video using GCP Cloud Run (Alpha)
Check out the experimental Cloud Run package.
API reference
getCompositions()
List available compositions
selectComposition()
Get a composition
renderMedia()
Render a video or audio
renderFrames()
Render a series of images
renderStill()
Render a single image
stitchFramesToVideo()
Turn images into a video
openBrowser()
Open a Chrome browser to reuse across renders
ensureBrowser()
Open a Chrome browser to reuse across renders
makeCancelSignal()
Create token to later cancel a render
getVideoMetadata()
Get metadata from a video file in Node.js
getSilentParts()
Obtain silent portions of a video or audio
ensureFfmpeg()
Check for ffmpeg binary and install if not existing
ensureFfprobe()
Check for ffprobe binary and install if not existing
getCanExtractFramesFast()
Probes for fast extraction for <OffthreadVideo>