BULDRR AI Vikash KumarSchedule a Call
Updated Workflow #1345

Create Video Narration with n8n, OpenAI & Python

This workflow automates video narration by extracting frames using Python, generating scripts with OpenAI's GPT-4o, and converting them into voiceovers. Save hours by transforming videos into narrated audio clips effortlessly.

Create Video Narration with n8n, OpenAI & Python
CONNECTS
Manual Trigger, HTTP Request, Code, Split Out, Split In Batches, Convert To Binary, Edit Image, Aggregate, Chain LLM, OpenAI, Wait, Google Drive
Learn it with AI
✦ SEE IT BEFORE YOU DOWNLOAD

The canvas, and the 12 nodes behind it.

Preview of the Create Video Narration with n8n, OpenAI & Python workflow canvas in n8n
✦ NODE BY NODE

What runs inside this workflow

Create Video Narration with n8n, OpenAI & Python is built from these n8n nodes: Manual Trigger, HTTP Request, Code, Split Out, Split In Batches, Convert To Binary, Edit Image, Aggregate, Chain LLM, OpenAI, Wait, Google Drive.

    ✦ LEARN HOW TO BUILD THIS WORKFLOW WITH AI
    Send this workflow to your assistant and have it taught to you.

    Each button opens the assistant with the prompt already written — asking it to explain this exact workflow step by step, as if teaching a complete beginner.

    Using our workflows often?
    Mark BULDRR AI as a preferred source and our templates surface higher in your own Google results.
    Add as a preferred source

    What This Automation Does

    This workflow takes a video from a public link and makes a spoken narration audio automatically.
    It solves the problem of writing scripts for videos which takes many hours.
    You get a voiceover audio file from the video fast, with a script written by AI looking at the images.


    Tools and Services Used

    • OpenAI API: For generating narration scripts and text-to-speech audio.
    • Google Drive API: To upload and store the final audio file.
    • Python with OpenCV: To extract frames evenly from the downloaded video.
    • n8n Automation Platform: To connect all steps in a workflow.
    • HTTP Request node: To download the video.

    Workflow Input, Process, and Output

    Inputs

    • Video file accessed from a public URL.

    Processing Steps

    1. Download video using HTTP Request node.
    2. Extract up to 90 evenly spaced frames from the video using Python and OpenCV in Code node.
    3. Split frames into individual items for further processing.
    4. Batch frames into groups of 15 to fit language model token limits.
    5. Convert base64 frames to binary and resize images for AI input.
    6. Generate a continuous narration script in the style of a famous nature narrator using OpenAI's multimodal GPT-4o LLM.
    7. Combine partial scripts into full narration text.
    8. Use OpenAI’s text-to-speech to make an MP3 voiceover from the script.
    9. Upload the final audio file to Google Drive for storage and sharing.

    Output

    • MP3 audio file with a voiceover narration of the input video.

    Beginner Step-by-Step: How to Use This Workflow in n8n

    Download and Import

    1. Inside the n8n editor, click the Download button on this page to get the workflow file.
    2. Import the workflow file via the “Import from File” button in n8n.

    Configure Credentials and Settings

    1. Add your OpenAI API Key in the credentials section to allow script generation and TTS.
    2. Add Google Drive API credentials to upload the voiceover audio.
    3. Check and update any IDs like Google Drive folder ID or email/channel fields if applicable.
    4. If URLs, prompts, or code snippets appear in the input fields, copy and paste exactly from the description to these fields.

    Test the Workflow

    1. Click the Manual Trigger node (Manual Trigger) and run the workflow once.
    2. Check the output to make sure the MP3 audio has uploaded successfully.

    Activate for Production

    1. Once tests pass, activate the workflow to run whenever needed or schedule runs.

    This quick method lets you use and benefit from the workflow without building it from zero.


    Key Workflow Details

    Extracting Frames

    The Code node (Python) uses OpenCV to select frames evenly spaced through the video.
    It outputs a list of base64 JPEG strings representing these frames.

    Batching and Image Preparation

    Splitting frames into batches of 15 keeps the input size manageable for the AI model.
    Frames get converted to binary and resized to 768px for better processing.

    Narration Script Generation

    The multimodal GPT-4o model reads image batches and produces script parts.
    Scripts keep context between batches for a smooth narration.

    Building the Final Audio

    Partial scripts combine into a single composed text.
    OpenAI’s text-to-speech service creates the MP3 file from the whole script.

    Uploading and Access

    The voiceover MP3 uploads to Google Drive.
    The user can then easily find and share the audio file.


    Common Issues and Solutions

    • Video Frame Extraction Failure: Happens if video format is unsupported or Python OpenCV is missing.
      Fix it by using MP4 videos and ensure OpenCV is installed.
    • OpenAI Rate Limit Errors: May occur when sending many requests fast.
      Use a Wait node to slow requests or upgrade the OpenAI plan.
    • Google Drive Upload Fails: Caused by expired or wrong OAuth credentials.
      Re-authenticate with Google Drive and check folder permissions.

    Customization Ideas

    • Change narration style by editing prompt in the script generation node.
    • Increase or decrease frame count in the Python node for detail vs speed.
    • Adjust batch size in the frame batching node for token limit management.
    • Switch upload folder in Google Drive node or use other cloud storage.
    • Remove or modify the frame resize node depending on desired image quality.

    Pre-Production Checklist

    • Confirm the video download URL is accessible and uses a supported format.
    • Run the frame extraction Python code separately first.
    • Validate OpenAI credentials including quota limits.
    • Verify Google Drive API connection and destination folder.
    • Test the workflow on a small video to check timing and outputs.
    • Backup generated files if re-running for multiple videos.

    Deployment Notes

    After testing the workflow, activate it in n8n editor.
    You can run it manually or schedule for batch jobs.

    Watch execution logs to catch API errors or slowdowns.
    Use the Wait node to avoid hitting OpenAI call limits.

    Consider self-host n8n for more control and stability at scale.


    Summary

    ✓ The workflow transforms a public video URL into narrated MP3 audio.
    ✓ It extracts key video frames, writes AI narration scripts, and produces speech.
    ✓ Saves hours of manual work on scripting and voiceover creation.
    ✓ Outputs an MP3 stored on Google Drive for easy access.
    ✓ Beginners can import and configure the workflow in n8n without building it themselves.


    Frequently Asked Questions

    Can this workflow use any video source URL?

    Yes, any publicly accessible video URL in MP4 format that OpenCV supports can be used.

    How much OpenAI API usage does the workflow consume?

    API usage depends on video length and frame batch size; more frames cost more tokens.

    Where is the voiceover audio file stored after generation?

    The audio file uploads to the linked Google Drive account in the specified folder.

    Is it possible to increase the number of frames used for narration?

    Yes, increasing frames is possible but will slow processing and use more resources.

    Vikash Kumar
    WRITTEN BY
    Vikash Kumar
    Founder, BULDRR AI
    Building AI agents, n8n workflows and end-to-end automation for 30+ Brands across India, the US, Europe, Dubai & Australia. 7+ years of Experience saving founders real hours every week - no code required.

    Related workflows.

    All 10,467+ templates →
    FREE Automate Twist Channel Creation and Messaging with n8n This workflow automates creating and updating a channel in Twist and sending a personalized message to specific users. It eliminates manual setup errors and saves time managing Twist communications. Open template → FREE Automate IT Support with Slack and OpenAI in n8n Streamline IT support by automating Slack message handling using n8n and OpenAI. This workflow handles Slack DMs, filters bots, queries a Confluence knowledge base, and delivers AI-generated responses, improving support efficiency and response time. Open template → FREE Automate Crypto Analysis with CoinMarketCap & n8n AI Agent Discover how this unique n8n workflow leverages CoinMarketCap's multi-agent AI to deliver precise, real-time cryptocurrency insights directly via Telegram. Manage crypto data analysis efficiently with automated multi-source API integration. Open template → FREE Generate On-Brand Blog Articles Using n8n and OpenAI This workflow automates the creation of on-brand blog articles by analyzing existing company content using n8n and OpenAI. It extracts article structures and brand voice to produce consistent draft articles, saving significant content creation time. Open template → FREE Automate Archiving Spotify Discover Weekly with n8n This automation workflow solves the hassle of manually archiving your Spotify Discover Weekly playlist by automatically comparing and adding only unique tracks to an archive playlist every Monday. It saves time, avoids duplicates, and keeps your archived music collection organized effortlessly using n8n. Open template → FREE Automate Analyzing Sales Call Transcripts with n8n & AI Agents This n8n workflow automates the extraction of structured insights from sales call transcripts using AI agents focused on sales, marketing, and product teams. It streamlines data processing, enabling faster decision-making and team alignment. Open template → FREE Automated SSL Expiry Alert System with n8n & Google Sheets This n8n workflow automates SSL certificate expiry monitoring by fetching URLs from Google Sheets, checking their SSL status via SSL-Checker.io, updating the sheet with results, and sending targeted email and Telegram alerts for certificates that are invalid or near expiry. Open template → FREE Automate Task Creation in ClickUp with n8n Struggling to manually create tasks in ClickUp? This beginner-friendly n8n workflow automates task creation, saving you time and reducing errors. Learn how to create tasks automatically with a simple trigger and ClickUp integration. Open template → FREE Automate Todoist Task Snoozing with n8n Workflow Struggling to manage and snooze your Todoist tasks efficiently? This detailed n8n workflow automates moving tasks between Inbox and Snoozed projects based on due dates, saving you hours of manual task juggling and ensuring timely task returns. Open template → FREE Build OpenAI Assistant with Google Drive Using n8n Automation This workflow automates creating and updating an OpenAI-powered Travel Assistant using a Google Drive file for accurate, specific user replies. It saves time by streamlining assistant updates and chat interactions seamlessly. Open template → FREE Automate WooCommerce Product Announcements on Twitter & Telegram Save time and boost your WooCommerce store's visibility by automatically posting new product announcements on Twitter and Telegram with this n8n workflow. Avoid manual posting errors and reach your audience instantly when new products go live. Open template → FREE Automate Zendesk to Asana Task Creation with n8n This detailed guide shows how to automate task creation in Asana from new Zendesk tickets using n8n. It solves the common challenge of manually duplicating support requests into project management, saving time and reducing errors. Open template → FREE Automate Image Alt Text Auditing & Enhancement with n8n & OpenAI Discover how this n8n workflow automates auditing and enhancing image alt text from any webpage using OpenAI GPT-4. It helps fix poor or missing alt attributes quickly and accurately, saving hours of manual work and improving web accessibility. Open template → FREE Create OpenAI Citation Workflow in n8n for File Retrieval This n8n workflow automates citation and source retrieval from OpenAI's vector store files, ensuring accurate content referencing and formatted output. It solves the problem of incomplete or strange citation text generated by AI, providing reliable markdown or HTML-ready citations for file-based AI assistance. Open template → FREE Automate Squarespace Order Fulfillment with n8n Workflow This n8n workflow automates order fulfillment for Squarespace Commerce by fetching pending orders and fulfilling them automatically, saving hours of manual work. It ensures timely fulfillment and customer notifications with seamless API integration. Open template → FREE Phishing Analysis Automation with n8n, URLScan.io & VirusTotal Automate phishing URL analysis with n8n using URLScan.io and VirusTotal. This workflow extracts URLs from unread Outlook emails, scans for threats, and reports via Slack, saving hours on threat detection. Open template → FREE Automate Image Analysis with Local Ollama Vision Models in n8n Struggling to extract detailed insights from images for business or research? This n8n workflow automates exhaustive image analysis using multiple local Ollama Vision Models, delivering structured, markdown-formatted results saved directly to Google Docs for collaboration and ease of use. Open template → FREE Automate Website Change Alerts N8N Telegram — Complete Guide [2026] Learn how to automate website change alerts n8n telegram with this step-by-step guide. Includes workflow examples, tips, and best practices for 2026. Open template → FREE Automate Text-to-Speech with Elevenlabs & n8n Webhook Save hours in your content creation by automating text-to-speech generation using n8n's webhook and Elevenlabs API. This workflow ensures seamless audio generation from text inputs, eliminating manual conversion errors and delays. Open template → FREE Automate Jira Notifications to Telegram with n8n Workflow This detailed guide shows how to automate Jira issue notifications to Telegram using n8n. Save hours by instantly sending updates, creation alerts, and assignment notifications to the right Telegram users, improving team communication and tracking. Open template → FREE Automate Daily Berlin Weather Updates to LINE with n8n Save time and stay informed by automatically sending daily weather updates for Berlin via LINE using n8n automation. This workflow fetches weather data every morning and messages you directly, eliminating manual checking and keeping you updated efficiently. Open template → FREE n8n Twitter Thread Generator 2026: AI Writes & Posts Threads From Any Content This n8n workflow uses AI to automatically convert any content — blog posts, videos, articles — into ready-to-post Twitter/X threads, complete with hooks and formatting. Open template → FREE Backup n8n Workflows to Bitbucket with Rate Limit Handling Automate daily backups of your n8n workflows directly to Bitbucket, intelligently managing API rate limits to avoid errors. This workflow ensures your automation definitions are safely versioned with minimal manual effort. Open template → FREE Automate Member and Activity Sync from Google Sheets to Orbit This blog explains how to automate moving community member data and their activities from Google Sheets into Orbit using n8n, solving tedious manual updates and ensuring accurate data syncing. Open template → FREE Sync Outlook Calendar with Notion via n8n Automation This workflow automates syncing Microsoft Outlook Calendar events into a Notion database. It solves the problem of manual calendar updates, saving time and reducing errors by automatically creating or updating Notion pages for your events. Open template →
    ✦ WANT THIS RUNNING IN YOUR BUSINESS?

    We’ll set it up for you.

    Tell us what you want it to do. We’ll wire the workflow, connect the credentials, and hand it over running.

    Keep exploring.