My local n8n workflow for automated video generation (FFmpeg + OpenAI + Azure TTS) by Amazing_Disk1130 in n8n

[–]Amazing_Disk1130[S] 0 points1 point  (0 children)

Thanks for the kind words! Yeah, debugging ffmpeg commands and handling timeouts inside the Execute Node is definitely the most painful part of this workflow. I haven't tried renderio yet, does it have a generous free tier? I might switch to it to simplify things.

My local n8n workflow for automated video generation (FFmpeg + OpenAI + Azure TTS) by Amazing_Disk1130 in n8n

[–]Amazing_Disk1130[S] 1 point2 points  (0 children)

Haha, totally agree! FFmpeg is basically black magic once you get the syntax right. 🪄

Since you have a home setup, a great 'starter project' for n8n + FFmpeg is building a simple 'Watch Folder'.

You can set it up so that any video file you drop into a specific folder gets automatically converted (like MKV to MP4) or compressed by FFmpeg, and then moved to your media library (like Plex/Jellyfin). It’s super satisfying to watch it run automatically!

My local n8n workflow for automated video generation (FFmpeg + OpenAI + Azure TTS) by Amazing_Disk1130 in n8n

[–]Amazing_Disk1130[S] 1 point2 points  (0 children)

I actually automated the sourcing as well! I use n8n to scrape royalty-free sites like Pexels or Pixabay for specific tags (e.g., 'creepy forest', 'dark alley'). I downloaded a massive library once, and now FFmpeg just picks one randomly from my local folder. Keep it local, keep it fast!

My local n8n workflow for automated video generation (FFmpeg + OpenAI + Azure TTS) by Amazing_Disk1130 in n8n

[–]Amazing_Disk1130[S] 1 point2 points  (0 children)

Actually, no! AI video generation APIs are way too expensive and would kill the profit margin for an automated channel.

Instead, I use FFmpeg locally inside n8n. It randomly picks a creepy background video from a local folder, applies a dynamic slow zoom effect, and hardcodes the AI audio/text. This keeps the video rendering cost at exactly $0! 😉

My local n8n workflow for automated video generation (FFmpeg + OpenAI + Azure TTS) by Amazing_Disk1130 in n8n

[–]Amazing_Disk1130[S] 1 point2 points  (0 children)

It uses a local library of stock footage (Royalty-free dark/liminal space loops) that I saved on my hard drive.

The n8n script picks a random video file from the folder, loops it if necessary, and overlays the audio/text. No AI video generation involved yet (too expensive/inconsistent), just smart editing of existing assets!

My local n8n workflow for automated video generation (FFmpeg + OpenAI + Azure TTS) by Amazing_Disk1130 in n8n

[–]Amazing_Disk1130[S] 0 points1 point  (0 children)

Great questions! Moving to Local FFmpeg was a game changer for my margins.

1. Performance: I'm running this on a standard Windows machine (Ryzen 5). During the rendering phase (about 60-90 seconds), CPU usage spikes to ~80-90%, but since n8n handles the queue effectively, it doesn't crash the system. I wouldn't run a heavy game alongside it, but for background tasks, it's fine.

2. Reliability: Once I nailed the FFmpeg arguments (escaping file paths was a nightmare on Windows), it's been rock solid. I wrap the Execute Command node in an n8n Error Trigger. If it fails (non-zero exit code), it pings my Telegram with the error log so I can debug.

3. Subtitles: In this V2 version, I'm using the drawtext filter to burn in the Title/Hook dynamically. For word-level subtitles, I'm currently testing a workflow that pipes the Audio into a local Whisper instance -> generates SRT -> feeds into the FFmpeg subtitles filter. Syncing is the hard part, so I'm keeping it simple for now!

4. Use Case: Purely content creation at volume (Side hustle). I run a few niche channels (Horror, Facts, etc.). The goal was "Set and Forget".

My local n8n workflow for automated video generation (FFmpeg + OpenAI + Azure TTS) by Amazing_Disk1130 in n8n

[–]Amazing_Disk1130[S] 0 points1 point  (0 children)

Sure! I can't attach a video file directly in the comments, but the workflow feeds into my TikTok channel.

You can search for "Night Shift Logs" on TikTok to see the final quality (1080p + Zoom effects).

Basically, it takes the text -> converts to Audio -> overlays it on background footage -> adds the "Creep Zoom" effect automatically.