Mit GPT-5 und Google Veo-3 aus Text-Prompts Videos generieren
Experte
Dies ist ein Content Creation, Multimodal AI-Bereich Automatisierungsworkflow mit 20 Nodes. Hauptsächlich werden If, Set, Wait, AimlApi, HttpRequest und andere Nodes verwendet. Aus Text-Prompts Videos mit GPT-5 und Google Veo-3 generieren
Voraussetzungen
- •Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
Verwendete Nodes (20)
Kategorie
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
"meta": {
"instanceId": "58e06bfa452afe2836b2ce0aa089999394af0b93c2a455035675d99d83112fa1",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "88472c30-7089-4a1b-8cd0-86773af42a69",
"name": "Bei Empfang einer Chat-Nachricht",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
-2272,
3136
],
"webhookId": "ddf5d4ac-9ed6-45be-9ce4-8c020e50ca13",
"parameters": {
"options": {}
},
"typeVersion": 1.3
},
{
"id": "f6ebf45d-eefa-4a2c-a91e-7e722905b937",
"name": "Notizzettel7",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1584,
3056
],
"parameters": {
"width": 246,
"height": 248,
"content": "Set API Key created in Step 2"
},
"typeVersion": 1
},
{
"id": "457e9064-6c7a-4b8d-8b83-2bda9cca1e10",
"name": "Notizzettel9",
"type": "n8n-nodes-base.stickyNote",
"position": [
-256,
2976
],
"parameters": {
"color": 5,
"width": 182,
"height": 448,
"content": "## Get and download your video"
},
"typeVersion": 1
},
{
"id": "e92714de-492c-449e-b85e-cb7546035de2",
"name": "Notizzettel10",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2320,
2976
],
"parameters": {
"color": 5,
"width": 710,
"height": 448,
"content": "### Start and Prompt Enhancing"
},
"typeVersion": 1
},
{
"id": "fe757385-c6bc-48bf-b594-61c33595c4f8",
"name": "Video-Datei abrufen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-208,
3120
],
"parameters": {
"url": "={{ $json.video.url }}",
"options": {}
},
"typeVersion": 4.2
},
{
"id": "89e22673-971c-48e2-b2ba-9cf714a5672f",
"name": "Status1 abfragen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1024,
3056
],
"parameters": {
"url": "=https://api.aimlapi.com/v2/generate/video/google/generation",
"options": {},
"sendQuery": true,
"authentication": "predefinedCredentialType",
"queryParameters": {
"parameters": [
{
"name": "generation_id",
"value": "={{ $json.id }}"
}
]
},
"nodeCredentialType": "aimlApi"
},
"credentials": {
"aimlApi": {
"id": "6Z9fP7Dy0ZkIBXXw",
"name": "AI/ML account"
}
},
"typeVersion": 4.2
},
{
"id": "91aedd47-2f11-45b0-a862-5c462522c00d",
"name": "Video mit KI/ML-API1 erstellen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-1504,
3136
],
"parameters": {
"url": "https://api.aimlapi.com/v2/generate/video/google/generation",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"authentication": "predefinedCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "prompt",
"value": "={{ $json.content || $('When chat message received').item.json.chatInput }}"
},
{
"name": "model",
"value": "google/veo-3.0-i2v-fast"
},
{
"name": "image_url",
"value": "={{ $('Set image URL').item.json.image_url }}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
},
"nodeCredentialType": "aimlApi"
},
"credentials": {
"aimlApi": {
"id": "6Z9fP7Dy0ZkIBXXw",
"name": "AI/ML account"
}
},
"typeVersion": 4.2
},
{
"id": "f5c04744-26fa-4fa0-9044-293b6e657f42",
"name": "Notizzettel18",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1600,
2976
],
"parameters": {
"color": 5,
"width": 1328,
"height": 448,
"content": "# Generate Video via VEO-3"
},
"typeVersion": 1
},
{
"id": "050a6dbc-c0df-40de-96d2-e3bb6ea4e25a",
"name": "30 Sek. warten1",
"type": "n8n-nodes-base.wait",
"position": [
-1248,
3136
],
"webhookId": "490facb8-d0ae-402e-ab59-a87720cf0bdd",
"parameters": {
"amount": 30
},
"typeVersion": 1.1
},
{
"id": "2d8638ee-7888-4071-8ccf-bd356a7e2390",
"name": "Cinematic Prompt (GPT‑5)",
"type": "n8n-nodes-aimlapi.aimlApi",
"position": [
-1808,
3136
],
"parameters": {
"model": "openai/gpt-5-mini-2025-08-07",
"prompt": "=You are a creative video prompt engineer.\n\nTurn the idea below into a short, visually rich description for Veo‑3 image‑to‑video.\nKeep it flexible and cinematic.\n\nGuidelines (use loosely):\n- mention camera movement / lens hints\n- time of day, mood, color palette\n- pacing / motion style\n- framing and composition\n\nKeep it to 2–4 sentences (under 120 words). If the input is just one word, expand it sensibly.\n\nIdea:\n{{ $('When chat message received').item.json.chatInput }}\n\nRespond with only the prompt text.",
"options": {
"maxTokens": 5000
},
"requestOptions": {}
},
"credentials": {
"aimlApi": {
"id": "6Z9fP7Dy0ZkIBXXw",
"name": "AI/ML account"
}
},
"typeVersion": 1
},
{
"id": "a483c79a-4ccb-472e-9730-94fa1e95475f",
"name": "Notizzettel21",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1888,
3024
],
"parameters": {
"width": 246,
"height": 328,
"content": "Use GPT‑5 turbo to expand the description into a Veo‑3‑friendly prompt (camera, movement, mood, composition)."
},
"typeVersion": 1
},
{
"id": "03143475-6fb7-45ea-a76b-5ad1c5ad20de",
"name": "Bild-URL setzen",
"type": "n8n-nodes-base.set",
"position": [
-2064,
3136
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "336c8e79-0530-4c17-ac6c-129d946d421b",
"name": "image_url",
"type": "string",
"value": "https://s2-111386.kwimgs.com/bs2/mmu-aiplatform-temp/kling/20240620/1.jpeg"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "3e40b553-d9e2-4046-95b1-13b4185ce45f",
"name": "Abgeschlossen?",
"type": "n8n-nodes-base.if",
"position": [
-816,
3136
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "383d112e-2cc6-4dd4-8985-f09ce0bd1781",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "completed"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "827a937e-ba7b-417d-9dd4-8a180d61417e",
"name": "Fehler?",
"type": "n8n-nodes-base.if",
"position": [
-608,
3200
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "7d9027b3-9662-4030-aafd-0c4a33d49eac",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "error"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "321f4fa4-3239-486c-b3b4-55f34ef7034d",
"name": "Stoppen und Fehler",
"type": "n8n-nodes-base.stopAndError",
"position": [
-400,
3216
],
"parameters": {
"errorMessage": "={{ $json.error.message }}"
},
"typeVersion": 1
},
{
"id": "22f8f3a9-ea96-438b-b276-f8b9e9f52370",
"name": "Notizzettel",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1712,
1744
],
"parameters": {
"width": 436,
"height": 424,
"content": "## STEP 1: CHAT INPUT → MINIMAL PROMPT\n\nThis workflow starts from the **Chat Trigger**. You can send even **one word** (e.g., “sunset”, “cyberpunk”, “ocean”).\n\n**Expected fields** (flexible):\n- **chatInput** – your idea/keyword/short brief (required)\n- **image_url** – a source image for image‑to‑video (required for i2v)\n- **duration** – seconds (optional, default 5)\n- **aspect_ratio** – e.g. `16:9` (optional)\n\nThe chat message is expanded by **GPT‑5** into a Veo‑3‑friendly prompt."
},
"typeVersion": 1
},
{
"id": "19a2c274-f8dd-4c91-bc9a-8042558d7162",
"name": "Notizzettel19",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1248,
2448
],
"parameters": {
"width": 484,
"height": 452,
"content": "## STEP 4: MAIN FLOW (END‑TO‑END)\n\n**How it runs**\n- Trigger via **Chat** (or attach a **Schedule Trigger** if you want batch runs).\n\n**Pipeline**\n1) Read chat input (idea/keyword)\n2) **GPT‑5** expands it into a concise cinematic prompt\n3) **Create Veo‑3 (image‑to‑video)** with image_url + prompt\n4) **Poll status** until `completed`\n5) On success → fetch **video_url** and (optionally) generate a short **title** with GPT‑5\n6) Return results to chat / continue with your own save or publish steps\n\nTweak polling interval based on your SLA and quota."
},
"typeVersion": 1
},
{
"id": "a816072b-bfc0-4253-9222-b23ce903f10f",
"name": "Notizzettel20",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1248,
2048
],
"parameters": {
"width": 484,
"height": 364,
"content": "## STEP 2: AI/ML API CREDENTIALS\n\n1) Get your key: https://aimlapi.com/app/keys\n2) In n8n, create **AI/ML account** credentials (Bearer token)\n3) Use that credential in:\n - **GPT‑5** node (text expansion)\n - **Create Video** (Veo‑3 generation)\n - **Get Status** (polling)\n\n**Headers** (handled by credentials):\n- Authorization: `Bearer YOUR_API_KEY`\n- Content‑Type: `application/json`\n\nKeep keys in Credentials/ENV — never hard‑code in nodes."
},
"typeVersion": 1
},
{
"id": "893fd045-f95f-4d59-a455-08bc88991271",
"name": "Notizzettel22",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1712,
2192
],
"parameters": {
"width": 436,
"height": 520,
"content": "## STEP 3 (OPTIONAL): SAVE & PUBLISH\n\nAfter you obtain `video_url`, you can extend the flow with:\n\n- **Save to Google Drive**: HTTP → upload file from `video_url`\n- **Generate SEO Title**: GPT‑5 short title (≤60 chars)\n- **Publish to YouTube**: your preferred uploader or API wrapper\n- **Log to a Sheet/DB**: store `prompt`, `generation_id`, `video_url`, `title`\n\nThese are optional and not required for the core Veo‑3 image‑to‑video path."
},
"typeVersion": 1
},
{
"id": "782053ae-2203-49d7-8e82-800d4fb4aef7",
"name": "Notizzettel23",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1248,
1648
],
"parameters": {
"color": 3,
"width": 484,
"height": 376,
"content": "**Veo‑3 Image‑to‑Video with GPT‑5 (Chat‑First)**\n\n**What this workflow does**\n- Accepts a minimal chat idea (even one word)\n- Uses **GPT‑5** to craft a Veo‑3‑ready prompt\n- Creates a **Google Veo‑3** image‑to‑video generation\n- Polls until completion and fetches the **final video URL**\n\n**Why it’s robust**\n- Soft prompt: expands short inputs sensibly\n- Fallbacks: if GPT output is empty, uses chat input\n- Safe polling: completed / failed split, adjustable wait\n\n**Where to extend**\n- Save to Drive, generate thumbnails, add subtitles, upload to YouTube, log analytics"
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"827a937e-ba7b-417d-9dd4-8a180d61417e": {
"main": [
[
{
"node": "321f4fa4-3239-486c-b3b4-55f34ef7034d",
"type": "main",
"index": 0
}
],
[
{
"node": "050a6dbc-c0df-40de-96d2-e3bb6ea4e25a",
"type": "main",
"index": 0
}
]
]
},
"3e40b553-d9e2-4046-95b1-13b4185ce45f": {
"main": [
[
{
"node": "fe757385-c6bc-48bf-b594-61c33595c4f8",
"type": "main",
"index": 0
}
],
[
{
"node": "827a937e-ba7b-417d-9dd4-8a180d61417e",
"type": "main",
"index": 0
}
]
]
},
"89e22673-971c-48e2-b2ba-9cf714a5672f": {
"main": [
[
{
"node": "3e40b553-d9e2-4046-95b1-13b4185ce45f",
"type": "main",
"index": 0
}
]
]
},
"03143475-6fb7-45ea-a76b-5ad1c5ad20de": {
"main": [
[
{
"node": "2d8638ee-7888-4071-8ccf-bd356a7e2390",
"type": "main",
"index": 0
}
]
]
},
"050a6dbc-c0df-40de-96d2-e3bb6ea4e25a": {
"main": [
[
{
"node": "89e22673-971c-48e2-b2ba-9cf714a5672f",
"type": "main",
"index": 0
}
]
]
},
"fe757385-c6bc-48bf-b594-61c33595c4f8": {
"main": [
[]
]
},
"2d8638ee-7888-4071-8ccf-bd356a7e2390": {
"main": [
[
{
"node": "91aedd47-2f11-45b0-a862-5c462522c00d",
"type": "main",
"index": 0
}
]
]
},
"88472c30-7089-4a1b-8cd0-86773af42a69": {
"main": [
[
{
"node": "03143475-6fb7-45ea-a76b-5ad1c5ad20de",
"type": "main",
"index": 0
}
]
]
},
"91aedd47-2f11-45b0-a862-5c462522c00d": {
"main": [
[
{
"node": "050a6dbc-c0df-40de-96d2-e3bb6ea4e25a",
"type": "main",
"index": 0
}
]
]
}
}
}Häufig gestellte Fragen
Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Experte - Content-Erstellung, Multimodales KI
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
Automatisierung der KI-Videoproduktion und -verteilung mit Veo3, YouTube und Google Workspace
Automatisierte KI-Videoproduktion und -verteilung mit Veo3, YouTube und Google Workspace
If
Wait
Aiml Api
+
If
Wait
Aiml Api
26 NodesDmitry
Content-Erstellung
AI-Bilder in Telegram mit GPT-4o und Flux Pro verbessern und generieren
Mit GPT-4o und Flux Pro in Telegram KI-Bilder erstellen und verbessern
If
Set
Telegram
+
If
Set
Telegram
22 NodesAI/ML API | D1m7asis
Content-Erstellung
Veo3 Instagram-Agent-Workflow
Automatisches Erstellen und Veröffentlichen von Instagram Reels mit Veo3, GPT-4 und Blotato
If
Set
Wait
+
If
Set
Wait
21 NodesAutomate With Marc
Content-Erstellung
1. Playlist-Details-Einstellungen für Roboter-Kopie
Erstelle KI-generierte YouTube-Musik-Playlists mit Suno, GPT-4, Runway und Creatomate
If
Set
Code
+
If
Set
Code
203 NodesJoseph
Content-Erstellung
Mein Workflow 9_Alte Version
Erstellen Sie täglich YouTube-Videos mit MagicHour, Gemini und Google Sheets
If
Set
Code
+
If
Set
Code
31 NodesDivyansh Chauhan
Content-Erstellung
Tägliche NASA-Astronomie-Bildveröffentlichung auf Instagram und Telegram-Benachrichtigung
Tägliche NASA-Astronomie-Freigabe auf Instagram und Telegram-Benachrichtigung
If
Set
Wait
+
If
Set
Wait
13 NodesAdrian
Content-Erstellung
Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes20
Kategorie2
Node-Typen8
Autor
AI/ML API | D1m7asis
@d1m7asisExterne Links
Auf n8n.io ansehen →
Diesen Workflow teilen