Burn word-highlighted karaoke captions onto videos with FFmpeg and FFprobe
Ready for 3.0What this workflow does
This workflow has 12 nodes and runs when someone submits an n8n form (“Burn karaoke captions onto a video”). It uses only n8n's built-in nodes.
How it runs
Trigger: When someone submits an n8n form (“Burn karaoke captions onto a video”).
- Prepare Run (Code): runs custom JavaScript code
- Create the temp folder (Execute Command): runs a shell command on the n8n host
- Restore the uploaded video (Code): runs custom JavaScript code
- Save the video to disk (Read/Write Files from Disk): writes a file to disk
- Read video duration and resolution (FFprobe) (Execute Command): runs a shell command on the n8n host
- Build the karaoke captions (.ass) (Code): runs custom JavaScript code
- Save the captions file to disk (Read/Write Files from Disk): writes a file to disk
- Burn the captions into the video (FFmpeg) (Execute Command): runs a shell command on the n8n host
- Verify the burn succeeded (Code): runs custom JavaScript code
- Read the captioned video back (Read/Write Files from Disk): reads a file from disk
…plus 1 more step. See the full node list below.
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (4)
- n8n Form Trigger
n8n-nodes-base.formTrigger - Code
n8n-nodes-base.code - Execute Command
n8n-nodes-base.executeCommand - Read/Write Files from Disk
n8n-nodes-base.readWriteFile
From the author
Quick overview This workflow collects a narrated video and its script via an n8n form, estimates word timings across the video duration, generates karaoke-style ASS subtitles, and uses FFprobe and FFmpeg (libass) to burn word-highlighted captions directly…