remotion-dev/remotion · error · Error
No frame found
Error message
No frame found
What it means
Thrown during animated image frame seeking when getFrameByIndex returns no frame. The decoder promised a frame at index i but returned none, indicating the image is truncated or the track frame count is inaccurate.
Source
Thrown at packages/core/src/animated-image/decode-image.ts:132
}) => {
const actualTimeInSec = getActualTime({
durationFound,
loopBehavior,
timeInSec,
});
const framesBefore = cache.filter(
(c) => c.timeInSeconds <= actualTimeInSec,
);
const biggestIndex = framesBefore
.map((c) => c.frameIndex)
.reduce((a, b) => Math.max(a, b), 0);
let i = biggestIndex;
while (true) {
const f = await getFrameByIndex(i);
i++;
if (!f.frame) {
throw new Error('No frame found');
}
if (!f.frame.duration) {
// non-animated, or AVIF in firefox
break;
}
if (i === selectedTrack.frameCount && durationFound === null) {
const duration = (f.frame.timestamp + f.frame.duration) / 1_000_000;
durationFound = duration;
}
if (f.timeInSeconds > actualTimeInSec || i === selectedTrack.frameCount) {
break;
}
}
// If close to end, also cache first frame for smooth wrap aroundView on GitHub (pinned to 78fe4bb3fd)
Solutions
- Re-encode the source image to ensure integrity.
- Try a different animated format (e.g. convert AVIF to GIF).
- Test in Chrome to isolate Firefox-specific AVIF issues.
Defensive patterns
Strategy: fallback
Validate before calling
// Validate the image with ffprobe/imagemagick before use: // identify -format '%n %T' image.gif
Try / catch
try {
await decodeImage({...});
} catch (e) {
if (e.message === 'No frame found') {
// fall back to a static image
}
} Prevention
- Re-encode animated images with a reliable tool.
- Test assets in the target browser before deployment.
When it happens
Trigger: Seeking to a frame index that the decoder cannot fulfill; corrupted animated image where frameCount overstates available frames.
Common situations: Partially downloaded or truncated GIF/WebP/AVIF; format/decoder mismatch; AVIF in Firefox where decoding paths differ.
Related errors
- No selected track
- Your browser does not support the WebCodecs ImageDecoder API
- Got no body
- Could not determine animated image duration
- Argument missing for parameter "frame"
AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12).
Data as JSON: /api/errors/09c3c06193f793eb.
Report an issue: GitHub.