remotion-dev/remotion · error · Error

The config format has changed. Change `Config.Puppeteer.*()`

Error message

The config format has changed. Change `Config.Puppeteer.*()` calls to `Config.*()` in your config file.

What it means

`Config.Puppeteer` was the pre-flat-config namespace for Chromium/Puppeteer-related setters (e.g. `Config.Puppeteer.setChromiumOpenGlRenderer`). The flat `Config` object throws on access to push users onto the renamed flat setters (`Config.setChromiumOpenGlRenderer`, etc.).

Source

Thrown at packages/cli/src/config/index.ts:755

		);
	},
	get Output() {
		throw new Error(
			'The config format has changed. Change `Config.Output.*()` calls to `Config.*()` in your config file.',
		);
	},
	get Log() {
		throw new Error(
			'The config format has changed. Change `Config.Log.*()` calls to `Config.*()` in your config file.',
		);
	},
	get Preview() {
		throw new Error(
			'The config format has changed. Change `Config.Preview.*()` calls to `Config.*()` in your config file.',
		);
	},
	get Puppeteer() {
		throw new Error(
			'The config format has changed. Change `Config.Puppeteer.*()` calls to `Config.*()` in your config file.',
		);
	},
	setMaxTimelineTracks: StudioServerInternals.setMaxTimelineTracks,
	setKeyboardShortcutsEnabled: keyboardShortcutsOption.setConfig,
	setInteractivityEnabled: interactivityOption.setConfig,
	setAllowHtmlInCanvasEnabled,
	setRspack: rspackOption.setConfig,
	setExperimentalRspackEnabled: rspackOption.setConfig,
	setNumberOfSharedAudioTags: numberOfSharedAudioTagsOption.setConfig,
	setExperimentalKeepAudioContextAlive:
		experimentalKeepAudioContextAliveOption.setConfig,
	setWebpackPollingInMilliseconds: webpackPollOption.setConfig,
	setShouldOpenBrowser: noOpenOption.setConfig,
	setBufferStateDelayInMilliseconds,
	overrideBundlerConfig,
	overrideRspackConfig,
	overrideWebpackConfig,

View on GitHub (pinned to 78fe4bb3fd)

Solutions

  1. Replace `Config.Puppeteer.setChromiumOpenGlRenderer(...)` with `Config.setChromiumOpenGlRenderer(...)` (and equivalents for other Chromium setters).
  2. Run through the v3→v4 migration guide to map every `Puppeteer.*` setter to its new flat name.

Example fix

// before
Config.Puppeteer.setChromiumOpenGlRenderer('angle');
// after
Config.setChromiumOpenGlRenderer('angle');
Defensive patterns

Strategy: validation

Validate before calling

const src = readFileSync('remotion.config.ts', 'utf8');
if (/Config\.Puppeteer\./.test(src)) {
  throw new Error('Remove Config.Puppeteer.* calls; use Config.setChromium* setters.');
}

Prevention

When it happens

Trigger: A remotion config file calling any `Config.Puppeteer.*` method, loaded under Remotion 4.x+/5.x.

Common situations: Stale config after a major upgrade; sample repo cloned from a pre-flat-config tutorial; copy-pasted Stack Overflow snippet.

Related errors


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