Chromium flags
We allow you to set the following flags in Chromium and Google Chrome since Remotion 2.6.5:
--disable-web-security
This will most notably disable CORS among other security features.
Remotion will automatically append the --user-data-dir flag.
Via Node.JS APIs
Pass chromiumOptions.disableWebSecurity in rendering APIs, including getCompositions(), renderMediaOnVercel() and renderStillOnVercel().
Via CLI flag
Pass --disable-web-security.
Via config file
Use setChromiumDisableWebSecurity().
Config .setChromiumDisableWebSecurity (true);Prior to v3.3.39, the option was called Config.Puppeteer.setChromiumDisableWebSecurity().
--ignore-certificate-errors
Results in invalid SSL certificates, such as self-signed ones, being ignored.
Via Node.JS APIs
Pass chromiumOptions.ignoreCertificateErrors in rendering APIs, including getCompositions(), renderMediaOnVercel() and renderStillOnVercel().
Via CLI flag
Pass --ignore-certificate-errors.
Via config file
Use setChromiumIgnoreCertificateErrors().
Config .setChromiumIgnoreCertificateErrors (true);Prior to v3.3.39, the option was called Config.Puppeteer.setChromiumIgnoreCertificateErrors().
--disable-headless
If disabled, the render will open an actual Chrome window where you can see the render happen. This requires Chrome for Testing or a custom Chrome or Chromium executable. Chrome Headless Shell always runs headlessly. The default is headless mode.
Whether a window opens depends on the browser executable:
| Browser executable | Opens a window |
|---|---|
| Default Chrome Headless Shell | No. Chrome Headless Shell has no headed mode. |
| Chrome for Testing | Yes. |
| Custom desktop Chrome or Chromium | Yes. |
| Custom Chrome Headless Shell | No. |
On Linux, headed mode requires a running display server. It is not available on Remotion Lambda, Cloud Run or Vercel.
Via Node.JS APIs
Pass chromiumOptions.headless: false in rendering APIs, including getCompositions().
Also pass chromeMode: 'chrome-for-testing', or provide a compatible desktop browser using browserExecutable.
Via CLI flag
Pass --disable-headless together with --chrome-mode=chrome-for-testing:
Render with a visible Chrome windownpx remotion render ... --chrome-mode=chrome-for-testing --disable-headless
Alternatively, combine it with --browser-executable to use a custom desktop browser.
Via config file
Use setChromiumHeadlessMode() and select Chrome for Testing:
remotion.config.tsConfig .setChromeMode ('chrome-for-testing');Config .setChromiumHeadlessMode (false);
Prior to v3.3.39, the option was called Config.Puppeteer.setChromiumHeadlessMode().
--gl
Changelog
- From Remotion v2.6.7 until v3.0.7, the default for Remotion Lambda was
swiftshader, but from v3.0.8 the default isswangle(Swiftshader on Angle) since Chrome 101 added support for it. - From Remotion v2.4.3 until v2.6.6, the default was
angle, however it turns out to have a small memory leak that could crash long Remotion renders.
Select the OpenGL renderer backend for Chromium.
Accepted values:
"angle""egl""swiftshader""swangle""vulkan"(from Remotion v4.0.41)"angle-egl"(from Remotion v4.0.51)
The default is null, letting Chrome decide, except on Lambda where the default is "swangle"
Via Node.JS APIs
Pass chromiumOptions.gl in rendering APIs, including getCompositions(), renderMediaOnVercel() and renderStillOnVercel().
Via CLI flag
Pass --gl=swiftshader.
Via config file
Config .setChromiumOpenGlRenderer ('swiftshader');Prior to v3.3.39, the option was called Config.Puppeteer.setChromiumOpenGlRenderer().
--user-agentv3.3.83
Via Node.JS APIs
Pass chromiumOptions.userAgent in rendering APIs, including getCompositions(), renderMediaOnLambda(), renderMediaOnVercel() and renderStillOnVercel().
Via CLI flag
Pass --user-agent.
--dark-modev4.0.381
Whether Chromium should pretend to be in dark mode by emulating the media feature 'prefers-color-scheme: dark'. Default is false.
Via Node.JS APIs
Pass chromiumOptions.darkMode in rendering APIs, including getCompositions(), renderMediaOnLambda(), renderMediaOnVercel() and renderStillOnVercel().
Via CLI flag
Pass --dark-mode.
Need more flags?
Open a GitHub issue to request it.