Skip to main content

API overview

remotion

Core APIs: useCurrentFrame(), interpolate(), etc.

<AbsoluteFill>
Position content absolutely and in full size
cancelRender()
Abort an error
<Composition>
Define a video
continueRender()
Unblock a render
delayRender()
Block a render from continuing
Easing
Customize animation curve of interpolate()
<Folder>
Organize compositions in the Studio sidebar
<Freeze>
Freeze some content in time
getInputProps()
Receive the user-defined input data
getRemotionEnvironment()
Determine if you are currently previewing or rendering
<Html5Audio>
Synchronize <audio> with Remotion's time
<Html5Video>
Synchronize a <video> with Remotion's time
<HtmlInCanvas>
Draw DOM content into a canvas via HTML-in-canvas
<IFrame>
Render an <iframe> tag and wait for it to load
<Img>
Render an <img> tag and wait for it to load
<CanvasImage>
Render an image into a canvas and apply effects
createEffect()
Create custom effects for canvas components
interpolateColors()
Map a range of values to colors
interpolate()
Map a range of values to another
<Loop>
Play some content repeatedly
measureSpring()
Determine the duration of a spring
<OffthreadVideo>
Alternative to <Html5Video>
<AnimatedImage>
Disply a GIF, AVIF or animated WebP image
registerRoot()
Initialize a Remotion project
<Sequence>
Time-shifts it's children
InteractivitySchema
Define timeline controls for components and effects
<Series>
Display contents after another
spring()
Physics-based animation primitive
staticFile()
Access file from public/ folder
<Still>
Define a still
useCurrentFrame()
Obtain the current time
useVideoConfig()
Get the duration, dimensions and FPS of a composition
VERSION
Get the current version of Remotion
Interactive.withSchema()
Expose component props as Studio timeline controls

@remotion/animated-emoji

Google Fonts Animated Emojis as Remotion Components

@remotion/animation-utils

Obtain info about video and audio.

@remotion/bundler

Create a Webpack bundle from Node.JS

@remotion/captions

Common operations for subtitles.

@remotion/cloudrun

Render videos and stills on GCP Cloud Run

@remotion/elevenlabs

Work with transcriptions from ElevenLabs

@remotion/enable-scss

Webpack override for enabling SASS/SCSS

@remotion/fonts

Load font files onto a page.

@remotion/gif

Include a GIF in your video.

@remotion/google-fonts

Load Google Fonts onto a page.

@remotion/install-whisper-cpp

Whisper.cpp installation and transcription

@remotion/lambda

Render videos and stills on AWS Lambda

@remotion/layout-utils

Layout helpers

@remotion/licensing

Report and query company license usage

@remotion/light-leaks

Light Leak effects

@remotion/lottie

Include a Lottie animation in your video

@remotion/media

An experimental <NewVideo /> tag for embedding videos.

@remotion/media-parser

A pure JavaScript library for parsing video files

@remotion/media-utils

Obtain info about video and audio.

@remotion/motion-blur

Apply motion blur effects to components

@remotion/noise

Generate noise effects

@remotion/openai-whisper

Work with transcriptions from OpenAI Whisper

@remotion/paths

Manipulate and obtain info about SVG paths

@remotion/player

Play a Remotion video in the browser.

@remotion/preload

Preload media for the Player

@remotion/renderer

Render video, audio and stills from Node.JS or Bun

@remotion/rive

Embed Rive animations in Remotion

@remotion/sfx

Sound effects library

@remotion/shapes

Generate SVG shapes

@remotion/skia

Low-level graphics using React Native Skia

@remotion/starburst

Starburst Effect

@remotion/studio

APIs for controlling theRemotion Studio

@remotion/tailwind

Webpack override for using TailwindCSS v3

@remotion/tailwind-v4

Webpack override for using TailwindCSS v4

@remotion/three

Create 3D videos using React Three Fiber

@remotion/transitions

Transition between scenes

Components

Timings

Presentations

Hover over an effect to see the preview.

@remotion/vercel

Render videos on Vercel Sandbox

@remotion/webcodecs

Converting media using WebCodecs

convertMedia()
Converts a video using WebCodecs and Media Parser
getAvailableContainers()
Get a list of containers @remotion/webcodecs supports.
webcodecsController()
Pause, resume and abort the conversion.
canReencodeVideoTrack()
Determine if a video track can be re-encoded
canReencodeAudioTrack()
Determine if a audio track can be re-encoded
canCopyVideoTrack()
Determine if a video track can be copied without re-encoding
canCopyAudioTrack()
Determine if a audio track can be copied without re-encoding
getDefaultAudioCodec()
Gets the default audio codec for a container if no other audio codec is specified.
getDefaultVideoCodec()
Gets the default video codec for a container if no other audio codec is specified.
defaultOnAudioTrackHandler()
The default track transformation function for audio tracks.
defaultOnVideoTrackHandler()
The default track transformation function for video tracks.
getAvailableAudioCodecs()
Get the audio codecs that can fit in a container.
getAvailableVideoCodecs()
Get the video codecs that can fit in a container.
convertAudioData()
Change the format or sample rate of an AudioData object.
createAudioDecoder()
Create an AudioDecoder object.
createVideoDecoder()
Create a VideoDecoder object.
extractFrames()
Extract frames from a video at specific timestamps.
getPartialAudioData()
Extract audio data from a specific time window of a media file.
rotateAndResizeVideoFrame()
Rotate and resize a video frame.
webFsWriter
Writer that saves to browser file system using File System Access API.
bufferWriter
Writer that saves to an in-memory resizable ArrayBuffer.

@remotion/zod-types

Zod types enabling Remotion Studio UI