自动化AI YouTube Shorts工厂(用于ASMR的Seedance)
高级
这是一个AI领域的自动化工作流,包含 32 个节点。主要使用 Code, Wait, Gmail, YouTube, Telegram 等节点,结合人工智能技术实现智能自动化。 使用Seedance、Fal AI和GPT-4创建并上传AI生成的ASMR YouTube Shorts
前置要求
- •Google 账号和 Gmail API 凭证
- •Telegram Bot Token
- •可能需要目标 API 的认证凭证
- •Google Sheets API 凭证
- •OpenAI API Key
使用的节点 (32)
分类
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "LPUpZtHK7gGRA5wa",
"meta": {
"instanceId": "1d871c7857f6a0f6093c24e2cd2fa1fa755b3826859fe85548d66cefd9f0e0ed"
},
"name": "自动化 AI YouTube Shorts 工厂(用于 ASMR 的 Seedance)",
"tags": [
{
"id": "1",
"name": "AI"
},
{
"id": "2",
"name": "YouTube"
},
{
"id": "3",
"name": "Content Creation"
}
],
"nodes": [
{
"id": "25a59939-f6b6-4fae-8ed0-7808e008331c",
"name": "解绑提示词",
"type": "n8n-nodes-base.code",
"position": [
3060,
220
],
"parameters": {
"jsCode": "function findSceneEntries(obj) {\n const scenes = [];\n\n for (const [key, value] of Object.entries(obj)) {\n if (key.toLowerCase().startsWith(\"scene\") && typeof value === \"string\") {\n scenes.push(value);\n } else if (typeof value === \"object\" && value !== null) {\n scenes.push(...findSceneEntries(value));\n }\n }\n\n return scenes;\n}\n\nlet output = [];\n\ntry {\n const inputData = items[0].json;\n const scenes = findSceneEntries(inputData);\n\n if (scenes.length === 0) {\n throw new Error(\"No scene keys found at any level.\");\n }\n\n output = scenes.map(scene => ({ description: scene }));\n} catch (e) {\n throw new Error(\"Could not extract scenes properly. Details: \" + e.message);\n}\n\nreturn output;\n"
},
"typeVersion": 2
},
{
"id": "c15a3956-bf4f-446e-b14b-1304d5b37f3d",
"name": "创建音效",
"type": "n8n-nodes-base.httpRequest",
"position": [
3260,
440
],
"parameters": {
"url": "https://queue.fal.run/fal-ai/mmaudio-v2 ",
"body": "= {\n \"prompt\": \"ASMR Soothing sound effects. {{ $('Prompts AI Agent').item.json.output.Sound }}\",\n \"duration\": 10,\n \"video_url\": \"{{ $json.data.outputs[0] }}\"\n }\n",
"method": "POST",
"options": {
"batching": {
"batch": {
"batchSize": 1,
"batchInterval": 2000
}
}
},
"sendBody": true,
"contentType": "raw",
"authentication": "genericCredentialType",
"rawContentType": "application/json",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {},
"typeVersion": 4.2
},
{
"id": "d277a432-e3b3-4069-837c-6e68def03672",
"name": "获取音效",
"type": "n8n-nodes-base.httpRequest",
"position": [
3780,
440
],
"parameters": {
"url": "=https://queue.fal.run/fal-ai/mmaudio-v2/requests/{{ $json.request_id }}",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {},
"typeVersion": 4.2
},
{
"id": "2734cc8e-416a-41fd-a20b-40c079889907",
"name": "等待音效",
"type": "n8n-nodes-base.wait",
"position": [
3480,
440
],
"parameters": {
"amount": 60
},
"typeVersion": 1.1
},
{
"id": "70f2ebeb-1ef1-439c-88b5-3c6094dca6a3",
"name": "列出元素",
"type": "n8n-nodes-base.code",
"position": [
3060,
640
],
"parameters": {
"jsCode": "return [\n {\n video_urls: items.map(item => item.json.video.url)\n }\n];"
},
"typeVersion": 2
},
{
"id": "8892adcd-e2da-476c-998d-b814b12184e0",
"name": "序列化视频",
"type": "n8n-nodes-base.httpRequest",
"position": [
3260,
640
],
"parameters": {
"url": "https://queue.fal.run/fal-ai/ffmpeg-api/compose",
"body": "={\n \"tracks\": [\n {\n \"id\": \"1\",\n \"type\": \"video\",\n \"keyframes\": [\n { \"url\": \"{{ $json.video_urls[0] }}\", \"timestamp\": 0, \"duration\": 10 },\n { \"url\": \"{{ $json.video_urls[1] }}\", \"timestamp\": 10, \"duration\": 10 },\n { \"url\": \"{{ $json.video_urls[2] }}\", \"timestamp\": 20, \"duration\": 10 }\n ]\n }\n ]\n}",
"method": "POST",
"options": {
"batching": {
"batch": {
"batchSize": 1,
"batchInterval": 2000
}
}
},
"sendBody": true,
"contentType": "raw",
"authentication": "genericCredentialType",
"rawContentType": "application/json",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {},
"typeVersion": 4.2
},
{
"id": "9063eb02-8cd4-4b75-87f2-fdd59f56f26c",
"name": "获取最终视频",
"type": "n8n-nodes-base.httpRequest",
"position": [
3780,
640
],
"parameters": {
"url": "=https://queue.fal.run/fal-ai/ffmpeg-api/requests/{{ $json.request_id }}",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {},
"typeVersion": 4.2
},
{
"id": "b3c4c19c-2caa-454c-ae56-a6c00117a6d4",
"name": "等待最终视频",
"type": "n8n-nodes-base.wait",
"position": [
3480,
640
],
"parameters": {
"amount": 60
},
"typeVersion": 1.1
},
{
"id": "7edea676-00ad-4c17-8fd9-54e55e06dbc5",
"name": "思考",
"type": "@n8n/n8n-nodes-langchain.toolThink",
"position": [
2580,
520
],
"parameters": {},
"typeVersion": 1
},
{
"id": "9d61496d-66a5-454f-b60a-6d997a4d75e8",
"name": "OpenAI 聊天模型",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
2220,
440
],
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4.1"
}
},
"credentials": {
"openAiApi": {}
},
"typeVersion": 1.2
},
{
"id": "da01687e-ad98-42c0-bab5-057882d6709b",
"name": "提示词 AI Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
2720,
220
],
"parameters": {
"text": "=Give me 3 video prompts based on the previous \n\nUse the Think tool to review your output",
"options": {
"systemMessage": "=Role: You are a prompt-generation AI specializing in satisfying, ASMR-style video prompts for kinetic sand. Your task is to generate a multi-scene video sequence that vividly shows a tool (like a knife, scoop, or press) interacting with kinetic sand in a clean, high-detail setting.\n\nYour writing must follow this style:\n\nSatisfying, tactile realism.\nMacro-level detail with a tight focus on the tool interacting with the sand's unique texture.\nThe tool must always be in motion — slicing, scooping, pressing, or crumbling the sand. Never idle or static.\nCamera terms are allowed (e.g. macro view, top-down shot, slow-motion).\n\nEach scene must contain all of the following, expressed through detailed visual language:\n\n✅ The kinetic sand (from the Idea)\n✅ The environment or surface (from the Environment)\n✅ The texture, structure, and behavior of the sand as it's being manipulated\n✅ A visible tool (knife, scoop, mold) actively interacting with the sand\n\nDescriptions should show:\n\nThe physical makeup of the sand — is it layered with different colors, sparkly, smooth, or matte? Emphasize its granular, yet cohesive structure.\nHow the sand responds to the tool — clean slicing, soft crumbling, perfect imprints, satisfying deformation, or a cascading collapse.\nThe interaction between the tool and the sand — sand grains momentarily sticking to the tool, the smooth surface left behind, the crisp edges of a cut.\nAny ASMR-relevant sensory cues like the satisfying crunch, the soft hiss of falling grains, or the shimmer of glitter, but always shown visually — not narrated.\n\nTone:\n\nSatisfying, mesmerizing, tactile.\nNo poetic metaphors, emotion, or storytelling.\nAvoid fantasy or surreal imagery.\nAll description must feel physically grounded and visually appealing.\n\nLength:\n\nEach scene must be between 1,000 and 2,000 characters.\nNo shallow or repetitive scenes — each must be immersive, descriptive, and specific.\nEach scene should explore a distinct phase of the action, a different camera perspective, or a new behavior of the sand.\n\nInputs:\n\nIdea: \"{{ $json.idea }}\"\nEnvironment: \"{{ $json.environment_prompt }}\"\nSound: \"{{ $json.sound_prompt }}\"\n\nFormat:\n\nIdea: \"...\"\nEnvironment: \"...\"\nSound: \"...\"\n\nScene 1: \"...\"\nScene 2: \"...\"\nScene 3: \"...\"\n(and so on)"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.9
},
{
"id": "64abf568-4e09-4e5c-bd12-7475e721a54c",
"name": "解析器",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
2380,
440
],
"parameters": {
"jsonSchemaExample": "[\n {\n \"Caption\": \"Diver Removes Nets Off Whale 🐋 #whalerescue #marinelife #oceanrescue #seahelpers #love #nature #instagood #explore #viral #savenature #oceanguardians #cleanoceans\",\n \"Idea\": \"Diver carefully cuts tangled net from distressed whale in open sea\",\n \"Environment\": \"Open ocean, sunlight beams through water, diver and whale, cinematic realism\",\n \"Sound\": \"Primary sound description under 15 words\",\n \"Status\": \"for production\"\n }\n]\n"
},
"typeVersion": 1.2
},
{
"id": "d8c29c02-f396-4150-aa2c-550d7b123f9e",
"name": "计划触发器",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
1500,
220
],
"parameters": {
"rule": {
"interval": [
{
"field": "minutes",
"minutesInterval": 30
}
]
}
},
"typeVersion": 1.2
},
{
"id": "f2e85826-3416-4a1e-8f26-5a8538087174",
"name": "解析器2",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
2900,
440
],
"parameters": {
"jsonSchemaExample": "{\n \"Idea\": \"An obsidian rock being sliced with a shimmering knife\",\n \"Environment\": \"Clean studio table, subtle light reflections\",\n \"Sound\": \"Crisp slicing, deep grinding, and delicate crumbling\",\n \"Scene 1\": \"Extreme macro shot: a razor-sharp, polished knife blade presses into the dark, granular surface of an obsidian rock, just beginning to indent.\",\n \"Scene 2\": \"Close-up: fine, iridescent dust particles erupt from the point of contact as the blade cuts deeper into the obsidian, catching the studio light.\",\n \"Scene 3\": \"Mid-shot: the knife, held perfectly steady, has formed a shallow, clean groove across the obsidian's shimmering surface, revealing a new, smooth texture.\"\n}"
},
"typeVersion": 1.2
},
{
"id": "790aee60-38b8-4939-834c-bd468b0f240b",
"name": "创建剪辑",
"type": "n8n-nodes-base.httpRequest",
"position": [
3260,
220
],
"parameters": {
"url": "https://api.wavespeed.ai/api/v3/bytedance/seedance-v1-lite-t2v-480p",
"body": "={\n \"aspect_ratio\": \"9:16\",\n \"duration\": 10,\n \"prompt\": \"VIDEO THEME: {{ $('Prompts AI Agent').item.json.output.Idea }} | WHAT HAPPENS IN THE VIDEO: {{ $json.description }} | WHERE THE VIDEO IS SHOT: {{ $('Prompts AI Agent').item.json.output.Environment }}\"\n}\n",
"method": "POST",
"options": {
"batching": {
"batch": {
"batchSize": 1,
"batchInterval": 3000
}
}
},
"sendBody": true,
"contentType": "raw",
"authentication": "genericCredentialType",
"rawContentType": "application/json",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {},
"typeVersion": 4.2
},
{
"id": "ba98805d-7d8b-476e-86b3-94017f79454b",
"name": "等待剪辑",
"type": "n8n-nodes-base.wait",
"position": [
3480,
220
],
"parameters": {
"amount": 120
},
"typeVersion": 1.1
},
{
"id": "7fc24bd4-8740-4633-b15a-868ff3cdacf5",
"name": "获取剪辑",
"type": "n8n-nodes-base.httpRequest",
"position": [
3780,
220
],
"parameters": {
"url": "=https://api.wavespeed.ai/api/v3/predictions/{{ $json.data.id }}/result",
"options": {},
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {},
"typeVersion": 4.2
},
{
"id": "614d8a4b-1319-4c0a-9b52-de284c232a6d",
"name": "下载最终视频",
"type": "n8n-nodes-base.httpRequest",
"position": [
4120,
820
],
"parameters": {
"url": "={{ $('Get Final Video').item.json.video_url }}",
"options": {
"response": {
"response": "file"
}
}
},
"typeVersion": 4.2
},
{
"id": "f916f4e9-9634-4863-bdb9-b56e3401165e",
"name": "上传到 YouTube",
"type": "n8n-nodes-base.youTube",
"position": [
4320,
820
],
"parameters": {
"title": "=AI ASMR : {{ $('Update Final Video to Sheet').item.json.idea }}",
"options": {
"tags": "=asmr, viral, asmrai, n8n, automation",
"description": "=AI-Generated Video Idea: {{ $('Update Final Video to Sheet').item.json.idea }}\n\nThis video was created automatically using our automated workflow #asmrai #asmr #n8n",
"privacyStatus": "public",
"notifySubscribers": true
},
"resource": "video",
"operation": "upload"
},
"credentials": {
"youTubeOAuth2Api": {}
},
"typeVersion": 1
},
{
"id": "f9c33085-e6e4-41c9-a463-62cb52c6e71c",
"name": "Telegram 通知",
"type": "n8n-nodes-base.telegram",
"position": [
4600,
820
],
"parameters": {
"text": "=✅ Your new video is ready! **Title:** {{ $('Update Final Video to Sheet').item.json.idea }} \nWatch it here: \nhttps://www.youtube.com/watch?v={{ $('Upload to YouTube').item.json.id }}",
"chatId": "YOUR_CHAT_ID",
"additionalFields": {
"parse_mode": "HTML"
}
},
"credentials": {
"telegramApi": {}
},
"typeVersion": 1.2
},
{
"id": "acbdb550-278a-4f0a-a3c2-b3f1e9183dec",
"name": "OpenAI 聊天模型1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1800,
420
],
"parameters": {
"model": {
"__rl": true,
"value": "gpt-4.1"
}
},
"credentials": {
"openAiApi": {}
},
"typeVersion": 1.2
},
{
"id": "708c4602-2d5c-49f1-84a8-3117a83ce2cc",
"name": "Gmail 通知",
"type": "n8n-nodes-base.gmail",
"position": [
4600,
1000
],
"parameters": {
"sendTo": "your-email@gmail.com",
"message": "=✅ Your new video is ready! **Title:** {{ $('Update Final Video to Sheet').item.json.idea }} Watch it here: https://www.youtube.com/watch?v={{ $('Upload to YouTube').item.json.id }}",
"options": {
"senderName": "Bilsimaging -n8n Automation"
},
"subject": "✅ Your new video is ready!"
},
"credentials": {
"gmailOAuth2": {}
},
"typeVersion": 2.1
},
{
"id": "86188a74-2ca4-4e15-a151-f5a2ae927763",
"name": "1. 生成热门创意",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
1800,
220
],
"parameters": {
"text": "Generate one short, trendy, and viral ASMR video idea. Describe the core concept in less than 10 words. Do not explain it, just state the idea.",
"options": {
"systemMessage": "You are an AI that specializes in identifying viral trends on platforms like TikTok and YouTube Shorts. Your job is to brainstorm a single, simple, and satisfying ASMR video concept. You must only return the idea as a single line of plain text. Do not add any extra words, formatting, or explanation."
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.9
},
{
"id": "2d8da7d8-c7a0-48b6-b999-59832b543e91",
"name": "注意:AI 创意生成",
"type": "n8n-nodes-base.stickyNote",
"position": [
1520,
0
],
"parameters": {
"color": 3,
"width": 940,
"height": 180,
"content": "### 步骤 1:AI 构思创意"
},
"typeVersion": 1
},
{
"id": "692c4c92-7d16-482f-8bca-cc951ab772e4",
"name": "注意:资源生成",
"type": "n8n-nodes-base.stickyNote",
"position": [
2560,
0
],
"parameters": {
"color": 3,
"width": 600,
"height": 180,
"content": "### 步骤 2:场景生成和视频创建"
},
"typeVersion": 1
},
{
"id": "211c2810-58c9-4246-ba27-561c3e57a74c",
"name": "注意:最终组装",
"type": "n8n-nodes-base.stickyNote",
"position": [
3260,
0
],
"parameters": {
"color": 3,
"width": 660,
"height": 180,
"content": "### 步骤 3:最终组装"
},
"typeVersion": 1
},
{
"id": "c76e5236-b71b-4705-b30c-89d5ae5dd0f5",
"name": "注意:分发",
"type": "n8n-nodes-base.stickyNote",
"position": [
4040,
0
],
"parameters": {
"color": 3,
"width": 960,
"height": 180,
"content": "### 步骤 4:分发和记录"
},
"typeVersion": 1
},
{
"id": "57e8010f-7184-4d88-84fd-d2b85782a09b",
"name": "提交指南",
"type": "n8n-nodes-base.stickyNote",
"position": [
0,
0
],
"parameters": {
"width": 1320,
"height": 1240,
"content": "//ASMR AI 工作流 By Bilsimaging.com"
},
"typeVersion": 1
},
{
"id": "62e10519-d31e-4012-8dcf-7e2e82ab35cd",
"name": "2. Enrich Idea into Plan",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
2200,
220
],
"parameters": {
"text": "=Take the following trendy ASMR idea and expand it into a full production plan using your required JSON format. Use the examples below for inspiration on how to format the \"Idea\" field.\n\nThe short ASMR idea is:\n[[\n{{ $json.output }}\n]]\n\nHave your final expanded \"Idea\" field be in this format: \"(color/style) (object) being (action)\". \nExamples for your inspiration: layered rainbow kinetic sand being sliced, sparkly purple soap being scooped, neon green slime being pressed.\n\nUse the Think tool to review your output.",
"options": {
"systemMessage": "=**Role**: You are an AI designed to generate 1 immersive, satisfying idea based on a user-provided topic. Your output must be formatted as a JSON array (single line) and follow all the rules below exactly.\n\n***\nRULES:\n\nOnly return 1 idea at a time.\n\nThe user will provide a key topic (e.g. \"kinetic sand slicing,\" \"satisfying sand scooping,\" \"ASMR sand sounds\").\n\nThe Idea must:\n\nBe under 13 words.\n\nDescribe an interesting and viral-worthy moment, action, or event related to the provided topic.\n\nThe Caption must be:\n\nShort, punchy, and viral-friendly.\n\nInclude one relevant emoji.\n\nInclude exactly 12 hashtags in this order:\n** 4 topic-relevant hashtags\n** 4 all-time most popular hashtags\n** 4 currently trending hashtags\n\nAll hashtags must be lowercase.\n\nSet Status to \"for production\" (always).\n\nThe Environment must:\n\nBe under 20 words.\n\nMatch the action in the Idea exactly.\n\nClearly describe:\n\nWhere the event is happening (e.g. minimalist white surface, clean studio table)\nKey visuals or background details (e.g. bright lighting, subtle glitter)\nStyle of scene (e.g. macro close-up, cinematic slow-motion)\n\nThe Sound must:\n\nBe under 15 words.\n\nDescribe the primary sound that makes sense to happen in the video. This will be fed to a sound model later on.\n\n\n***\nOUTPUT FORMAT (single-line JSON array):\n\n[\n {\n \"Caption\": \"That crunch! 🤤 #kineticsand #satisfyingvideos #asmrsand #sand #oddlysatisfying #viral #fyp #explore #trending #tiktok #diy #crafts\",\n \"Idea\": \"Slicing through a block of layered rainbow kinetic sand\",\n \"Environment\": \"Macro close-up on a clean, bright white surface, cinematic slow-motion\",\n \"Sound\": \"Crisp, crunchy slicing sounds with a soft, gentle hiss\",\n \"Status\": \"for production\"\n }\n]"
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.9
},
{
"id": "06ccc97f-aa87-4c64-860b-0da4739d3de5",
"name": "3. Log New Idea to Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
2560,
220
],
"parameters": {
"columns": {
"value": {
"idea": "={{ $json.output[0].Idea }}",
"caption": "={{ $json.output[0].Caption }}",
"production": "In Progress",
"sound_prompt": "={{ $json.output[0].Sound }}",
"environment_prompt": "={{ $json.output[0].Environment }}"
},
"mappingMode": "defineBelow"
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"value": "YOUR_SHEET_NAME"
},
"documentId": {
"__rl": true,
"value": "YOUR_GOOGLE_SHEET_ID"
}
},
"credentials": {
"googleSheetsOAuth2Api": {}
},
"typeVersion": 4.5
},
{
"id": "58b1f682-2752-4995-b05e-7598353d7a61",
"name": "Update Final Video to Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
4120,
640
],
"parameters": {
"key": "idea",
"value": "={{ $('Update Final Video to Sheet').item.json.idea }}",
"columns": {
"value": {
"production": "Done",
"youtube_url": "=",
"final_output": "={{ $json.video_url }}"
},
"mappingMode": "defineBelow"
},
"operation": "update",
"sheetName": {
"__rl": true,
"value": "YOUR_SHEET_NAME"
},
"documentId": {
"__rl": true,
"value": "YOUR_GOOGLE_SHEET_ID"
}
},
"credentials": {
"googleSheetsOAuth2Api": {}
},
"typeVersion": 4.5
},
{
"id": "fbf64920-6e9c-4dfa-b75a-bbf022ea597b",
"name": "Update Sheet with Youtube Link",
"type": "n8n-nodes-base.googleSheets",
"position": [
4600,
640
],
"parameters": {
"key": "idea",
"value": "={{ $('Update Final Video to Sheet').item.json.idea }}",
"columns": {
"value": {
"youtube_url": "=https://www.youtube.com/watch?v={{ $('Upload to YouTube').item.json.id }}"
},
"mappingMode": "defineBelow"
},
"operation": "update",
"sheetName": {
"__rl": true,
"value": "YOUR_SHEET_NAME"
},
"documentId": {
"__rl": true,
"value": "YOUR_GOOGLE_SHEET_ID"
}
},
"credentials": {
"googleSheetsOAuth2Api": {}
},
"typeVersion": 4.5
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "final_submission_v1",
"connections": {
"Think": {
"ai_tool": [
[
{
"node": "2. Enrich Idea into Plan",
"type": "ai_tool",
"index": 0
},
{
"node": "Prompts AI Agent",
"type": "ai_tool",
"index": 0
}
]
]
},
"Parser": {
"ai_outputParser": [
[
{
"node": "2. Enrich Idea into Plan",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Parser2": {
"ai_outputParser": [
[
{
"node": "Prompts AI Agent",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"Get Clips": {
"main": [
[
{
"node": "Create Sounds",
"type": "main",
"index": 0
}
]
]
},
"Get Sounds": {
"main": [
[
{
"node": "List Elements",
"type": "main",
"index": 0
}
]
]
},
"Create Clips": {
"main": [
[
{
"node": "Wait for Clips",
"type": "main",
"index": 0
}
]
]
},
"Create Sounds": {
"main": [
[
{
"node": "Wait for Sounds",
"type": "main",
"index": 0
}
]
]
},
"List Elements": {
"main": [
[
{
"node": "Sequence Video",
"type": "main",
"index": 0
}
]
]
},
"Sequence Video": {
"main": [
[
{
"node": "Wait for Final Video",
"type": "main",
"index": 0
}
]
]
},
"Wait for Clips": {
"main": [
[
{
"node": "Get Clips",
"type": "main",
"index": 0
}
]
]
},
"Get Final Video": {
"main": [
[
{
"node": "Update Final Video to Sheet",
"type": "main",
"index": 0
}
]
]
},
"Wait for Sounds": {
"main": [
[
{
"node": "Get Sounds",
"type": "main",
"index": 0
}
]
]
},
"Prompts AI Agent": {
"main": [
[
{
"node": "Unbundle Prompts",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "1. Generate Trendy Idea",
"type": "main",
"index": 0
}
]
]
},
"Unbundle Prompts": {
"main": [
[
{
"node": "Create Clips",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "2. Enrich Idea into Plan",
"type": "ai_languageModel",
"index": 0
},
{
"node": "Prompts AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Upload to YouTube": {
"main": [
[
{
"node": "Gmail Notification",
"type": "main",
"index": 0
},
{
"node": "Telegram Notification",
"type": "main",
"index": 0
},
{
"node": "Update Sheet with Youtube Link",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "1. Generate Trendy Idea",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Download Final Video": {
"main": [
[
{
"node": "Upload to YouTube",
"type": "main",
"index": 0
}
]
]
},
"Wait for Final Video": {
"main": [
[
{
"node": "Get Final Video",
"type": "main",
"index": 0
}
]
]
},
"1. Generate Trendy Idea": {
"main": [
[
{
"node": "2. Enrich Idea into Plan",
"type": "main",
"index": 0
}
]
]
},
"2. Enrich Idea into Plan": {
"main": [
[
{
"node": "3. Log New Idea to Sheet",
"type": "main",
"index": 0
}
]
]
},
"3. Log New Idea to Sheet": {
"main": [
[
{
"node": "Prompts AI Agent",
"type": "main",
"index": 0
}
]
]
},
"Update Final Video to Sheet": {
"main": [
[
{
"node": "Download Final Video",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 人工智能
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
使用AI、ElevenLabs、PIAPI Shotstack/Creatomate生成视频并发布到YouTube
使用AI、ElevenLabs、PIAPI Shotstack/Creatomate生成视频并发布到YouTube
If
Set
Code
+16
79 节点Immanuel
人工智能
使用GPT-4o、WordPress和LinkedIn发布自动化RSS内容到博客文章
使用GPT-4o、WordPress和LinkedIn发布自动化RSS内容到博客文章
If
Set
Code
+21
40 节点Immanuel
人工智能
使用AI、ElevenLabs和多平台发布创建和审批POV视频
使用AI、ElevenLabs和多平台发布创建和审批POV视频(TikTok/IG/YT)
If
Set
Code
+20
60 节点Immanuel
设计
💥 使用Seedance & Blotato生成AI视频并上传到TikTok、YouTube和Instagram - 视频
使用Seedance生成AI病毒视频并上传到TikTok、YouTube和Instagram
Set
Code
Wait
+8
40 节点Dr. Firas
人工智能
使用Sora-2、GPT和YouTube创建和发布联盟产品视频
使用Sora-2、GPT和YouTube创建和发布联盟产品视频
If
Set
Code
+12
34 节点Amjid Ali
内容创作
在可视化参考库中探索n8n节点
在可视化参考库中探索n8n节点
If
Ftp
Set
+93
113 节点I versus AI
其他