1. Batch Rendering at Scale
If you need to render hundreds or thousands of video variants (e.g. for product catalogs, event invites, or localized ads), use this workflow.Step-by-Step
- Prepare a
.aepor.mogrttemplate with dynamic layers (text, images, audio) - Create a CSV, JSON, or database table with per-job data:
- Write a script (Node.js or Python) to loop through records and:
- POST a new job using the API
- Replace layer values using the
assetsarray
Example Job Payload
Tips
- Throttle job creation (60/min max)
- Use tags or metadata to group related jobs
- Poll status or use webhooks to track completion
2. Adding TTS Voiceovers
You can dynamically synthesize speech and inject audio into a composition layer.Steps
- Generate speech using an API like ElevenLabs or Google Cloud TTS
- Store the audio file on a public or whitelisted URL
- Add it as an
audioasset in the job payload
Tips
- Sync duration and placement inside AE composition
- Use TTS engine options to vary pitch/speed
- Pre-generate and cache audio where possible
3. Personalized Titles and Text
Use asset injection to modify text dynamically per job.Example Asset
Tips
- Use clear
layerNames in your AE project - Wrap expressions in AE to handle empty values:
- Use
previewmode during development - Fonts must be preloaded via Fonts API
Combine Them
You can combine all three patterns — injecting TTS, custom images, and batch metadata — to create:- Automated onboarding videos
- Personalized wrap-ups or recaps
- Multilingual social content
Next: ➡️ Creating Jobs →
➡️ Uploading Fonts →
➡️ Handle Webhooks →

