Render all compositions
In some scenarios, you might find it useful to render all compositions.
Via CLI
You can combine the npx remotion compositions command with a bash loop:
render-all.shsh
You can execute it using:
sh
note
This only works on UNIX-based systems (Linux, macOS) and on WSL in Windows.
Via Node.JS script
You can create a script that fits you using the Node.JS APIs. Below is an example
render-all.mjstsbundle } from '@remotion/bundler';import {getCompositions ,renderMedia } from '@remotion/renderer';import {createRequire } from 'module';constrequire =createRequire (import.meta .url );constbundled = awaitbundle ({entryPoint :require .resolve ('./src/index.ts'),// If you have a Webpack override, make sure to add it herewebpackOverride : (config ) =>config ,});constcompositions = awaitgetCompositions (bundled );for (constcomposition ofcompositions ) {console .log (`Rendering ${composition .id }...`);awaitrenderMedia ({codec : 'h264',composition ,serveUrl :bundled ,outputLocation : `out/${composition .id }.mp4`,});}
Executebash