Skip to main content

<Freeze>

Available from v2.2.0.

When using the <Freeze/> component, all of it's children will freeze to the frame that you specify as a prop.

If a component is a child of <Freeze/>, calling the useCurrentFrame() hook will always return the frame number you specify, irrespective of any <Sequence>.

<Video /> and <OffthreadVideo /> elements will be paused and <Audio /> elements will render muted.

Example

MyComp.tsx
tsx
import { Freeze } from "remotion";
 
const MyVideo = () => {
return (
<Freeze frame={30}>
<BlueSquare />
</Freeze>
);
};
MyComp.tsx
tsx
import { Freeze } from "remotion";
 
const MyVideo = () => {
return (
<Freeze frame={30}>
<BlueSquare />
</Freeze>
);
};

API

The Freeze component is a high order component and accepts, besides it's children, the following props:

frame

At which frame it's children should freeze.

activev4.0.127

Deactivate freezing component by passing false.
You may also pass a callback function and accept the current frame and return a boolean.

From frame 30 on
tsx
import { Freeze } from "remotion";
 
const MyVideo = () => {
return (
<Freeze frame={30} active={(f) => f < 30}>
<BlueSquare />
</Freeze>
);
};
From frame 30 on
tsx
import { Freeze } from "remotion";
 
const MyVideo = () => {
return (
<Freeze frame={30} active={(f) => f < 30}>
<BlueSquare />
</Freeze>
);
};

Demo

0
0:00 / 0:05

See also