Transform long videos into viral shorts with AI and schedule to social media using Whisper & Gemini
UnknownWhat this workflow does
This AI workflow has 19 nodes and runs when someone submits an n8n form (“🎬 Video to Viral Shorts”). Along the way it connects Google Gemini Chat Model and Upload Post (community). It also calls api.upload-post.com and api.openai.com over HTTP.
How it runs
Trigger: When someone submits an n8n form (“🎬 Video to Viral Shorts”).
- FFmpeg: Extract Audio (HTTP Request): calls api.upload-post.com (POST)
- Wait: waits 10 seconds
- Check Audio Job Status (HTTP Request): calls an HTTP API
- Is Audio Job Completed? (If): checks a condition and branches into true / false
- Download Audio (HTTP Request): calls an HTTP API
- Wait: pauses before continuing
- Whisper: Transcribe with Timestamps (HTTP Request): calls api.openai.com (POST)
- Parse Whisper Results (Code): runs custom JavaScript code
- AI Agent: runs an AI agent, with model: Google Gemini Chat Model
- Parse Gemini Analysis (Code): runs custom JavaScript code
…plus 7 more steps. See the full node list below.
Services it uses
HTTP calls to: api.upload-post.com, api.openai.com
Before you upgrade to n8n 3.0
We can't fully verify this one: it relies on 1 community package, and n8n 3.0 turns unverified community packages off by default (N8N_UNVERIFIED_PACKAGES_ENABLED=false).
- Check that n8n-nodes-upload-post is verified or supports 3.0 (used in Schedule to TikTok, Instagram, and YouTube).
Nodes used (8)
- HTTP Request
n8n-nodes-base.httpRequest - Upload Post
n8n-nodes-upload-post.uploadPost - Code
n8n-nodes-base.code - Google Gemini Chat Model
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - AI Agent
@n8n/n8n-nodes-langchain.agent - Wait
n8n-nodes-base.wait - If
n8n-nodes-base.if - n8n Form Trigger
n8n-nodes-base.formTrigger
From the author
This automation template turns any long video into multiple viral-ready short clips and auto-schedules them to TikTok, Instagram Reels, and YouTube Shorts. It works with both vertical and horizontal inputs and respects the original input resolution (no…