remotion-dev/remotion · error · Error

Cannot render an image sequence with a codec that renders no

Error message

Cannot render an image sequence with a codec that renders no images. codec = ${codec}, imageFormat = ${imageFormat}

What it means

Thrown by the render flow when shouldOutputImageSequence is true (e.g. --sequence) but the derived imageFormat is 'none'. imageFormat becomes 'none' for audio-only codecs (e.g. mp3, wav) that produce no video frames; an image sequence requires actual frames to write.

Source

Thrown at packages/cli/src/render-flows/render.ts:614

			});
		} else {
			Log[logLogLevel](
				{
					indent,
					logLevel,
					tag,
				},
				previewString,
			);
		}
	};

	if (shouldOutputImageSequence) {
		fs.mkdirSync(absoluteOutputFile, {
			recursive: true,
		});
		if (imageFormat === 'none') {
			throw new Error(
				`Cannot render an image sequence with a codec that renders no images. codec = ${codec}, imageFormat = ${imageFormat}`,
			);
		}

		const outputDir = shouldOutputImageSequence
			? absoluteOutputFile
			: await fs.promises.mkdtemp(
					path.join(os.tmpdir(), 'react-motion-render'),
				);

		Log.verbose({indent, logLevel}, 'Output dir', outputDir);

		await RenderInternals.internalRenderFrames({
			imageFormat,
			serializedInputPropsWithCustomSchema,
			onFrameUpdate: (rendered) => {
				(renderingProgress as RenderingProgressInput).frames = rendered;
				updateRenderProgress({newline: false, printToConsole: true});

View on GitHub (pinned to 78fe4bb3fd)

Solutions

  1. Drop --sequence when rendering audio-only output.
  2. Switch to a video codec (e.g. --codec=h264) if you need an image sequence.
  3. Re-check your codec/image-format combination with `npx remotion render --help`.

Example fix

// before
$ npx remotion render MyComp out --sequence --codec=mp3
// after - audio render does not need --sequence
$ npx remotion render MyComp out.mp3 --codec=mp3
Defensive patterns

Strategy: validation

Validate before calling

const AUDIO_CODECS = new Set(['mp3', 'wav', 'aac']);

const validateSequenceCodec = (codec: string, imageSequence: boolean) => {
  if (imageSequence && AUDIO_CODECS.has(codec)) {
    throw new Error(`--sequence is incompatible with audio-only codec '${codec}'`);
  }
};

validateSequenceCodec(codec, imageSequence);

Type guard

const isAudioOnlyCodec = (codec: string): boolean =>
  ['mp3', 'wav', 'aac'].includes(codec);

Prevention

When it happens

Trigger: Combining `--sequence` with an audio-only codec such as `--codec=mp3` or `--codec=wav`. Setting a codec whose still-image format resolves to 'none' while requesting a frame sequence.

Common situations: Forgetting that an audio render has no frames; copy-pasting a video render command and only changing the codec to an audio one while keeping --sequence; misconfigured render preset.

Related errors


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