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 around

View on GitHub (pinned to 78fe4bb3fd)

Solutions

  1. Re-encode the source image to ensure integrity.
  2. Try a different animated format (e.g. convert AVIF to GIF).
  3. 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

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


AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12). Data as JSON: /api/errors/09c3c06193f793eb. Report an issue: GitHub.