GPT-4o および Veo3 AI ビデオジェネレータを使用して聖書のキャラクタービデオブログを生成

上級

これは自動化ワークフローで、16個のノードを含みます。主にWait, HttpRequest, GoogleSheets, Agent, ScheduleTriggerなどのノードを使用。 GPT-4o および Veo3 AI 動画ジェネレーターを使用して聖書の登場人物のビデオブログを生成する

前提条件
  • ターゲットAPIの認証情報が必要な場合あり
  • Google Sheets API認証情報
  • OpenAI API Key

カテゴリー

-
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "meta": {
    "instanceId": "44b6b0581231cf0648945e97c4b15adf52102210c0661bec54342c7dc57a02c3",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "cbbea0db-2557-48ef-a9ab-04a86a4437fa",
      "name": "スケジュールトリガー",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -1312,
        -128
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "f4047448-a0e8-49e3-85e3-44729e2cf94b",
      "name": "付箋3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -32,
        -256
      ],
      "parameters": {
        "color": 3,
        "width": 540,
        "height": 520,
        "content": "## Save Content"
      },
      "typeVersion": 1
    },
    {
      "id": "e4a99226-f6dc-411e-86bb-681707d482c6",
      "name": "付箋2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -384,
        -400
      ],
      "parameters": {
        "color": 6,
        "width": 320,
        "height": 740,
        "content": "## Create a Video"
      },
      "typeVersion": 1
    },
    {
      "id": "36b4b4b9-9226-4f38-bec6-e6b5d6d73a51",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1360,
        -256
      ],
      "parameters": {
        "color": 5,
        "width": 840,
        "height": 520,
        "content": "# Input: Video Topic"
      },
      "typeVersion": 1
    },
    {
      "id": "36337833-92cb-45ed-ac80-8ffd96b3c8a9",
      "name": "OpenAI Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -1232,
        80
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "typeVersion": 1.2
    },
    {
      "id": "c8412fba-deac-4e6c-9f22-176ead2a956e",
      "name": "思考1",
      "type": "@n8n/n8n-nodes-langchain.toolThink",
      "position": [
        -1104,
        80
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "14a1ad4e-9fcb-443a-8627-b4802d1c994e",
      "name": "構造化出力パーサー1",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -992,
        80
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"caption\": \"\",\n  \"idea\": \"\",\n  \"environment\": \"\",\n  \"status\": \"\"\n}"
      },
      "typeVersion": 1.2
    },
    {
      "id": "41cc4339-6112-4939-a2df-a246d80f234c",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -832,
        80
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "typeVersion": 1.2
    },
    {
      "id": "b5759496-3eaf-4d02-ab7c-82cf41361162",
      "name": "思考",
      "type": "@n8n/n8n-nodes-langchain.toolThink",
      "position": [
        -672,
        80
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "9d2f5cb6-9db8-4eca-bde0-e883e0fa4cd4",
      "name": "ビデオアイデア生成",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -1152,
        -128
      ],
      "parameters": {
        "text": "Give me an idea to create the content about biblical characters speaking to thecamera and making a vlog",
        "options": {
          "systemMessage": "=** Purpose **\nYou generate viral short-form video ideas inspired by biblical characters or scenes, styled like modern TikTok vlogs. These should feel personal, emotional, and often humorous.\n\n** Think Tool Prompt (used before generation) **\n“How can I take a biblical moment or character and turn it into a relatable, viral, or funny TikTok-style video idea that feels natural, emotional, or modern?”\n\n** Output Requirements **\nYour response must include:\n\n- caption – Short, poetic or funny, TikTok-style. Include emojis and 3–5 hashtags (e.g., #biblevlog #foryou #holycomedy #ancientvibes).\n- idea – 1–2 sentence summary of the action, story, or twist in the video.\n- environment – Describe what the set looks like: light, textures, mood, setting. Think “GoPro meets ancient Jerusalem.”\n- status – Must be \"to create\", without quotation marks\n\n** JSON Output Parser **\nEvery output must strictly follow this format:\n\n{\n  \"caption\": \"\",\n  \"idea\": \"\",\n  \"environment\": \"\",\n  \"status\": \"\"\n}\n\n** Sample Outputs **\n\nExample 1\n{\n  \"caption\": \"When Jesus gives you the silent treatment 🕊️😶 #jesusvlog #holycomedy\",\n  \"idea\": \"Jesus calmly stares at the camera while the disciple keeps asking, 'Are we lost?' – awkward silence builds up.\",\n  \"environment\": \"Desert trail, golden hour light, dry bushes around, warm rocky textures and wind softly blowing.\",\n  \"status\": \"ready for production\"\n}\n\nExample 2\n{\n  \"caption\": \"POV: You just met Mary Magdalene and she’s not what you expected 😳✨ #biblevlog #foryou\",\n  \"idea\": \"A modern-style introduction of Mary Magdalene where she breaks the fourth wall with sarcasm and confidence.\",\n  \"environment\": \"Dusty stone home with narrow light beams, clay walls, fabric drapes blowing slightly in the breeze.\",\n  \"status\": \"ready for production\"\n}\n\nExample 3\n{\n  \"caption\": \"Me trying to explain the flood before it happened 🌧️🐘 #noahvibes #bibletok\",\n  \"idea\": \"Noah explains why he’s building the ark, while others laugh in the background — like a vlog rant.\",\n  \"environment\": \"Half-built wooden structure, cloudy sky, goats wandering around, mud everywhere, distant laughter.\",\n  \"status\": \"concept only\"\n}"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    },
    {
      "id": "8a94a444-28d0-42ac-8cb6-3040fb8769cc",
      "name": "Veo3プロンプト生成",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -832,
        -128
      ],
      "parameters": {
        "text": "=Create a prompt for the Veo3 video based on the following information:\n\nIdea: {{ $json.output.idea }}\nEnvironment: {{ $json.output.environment }}",
        "options": {
          "systemMessage": "=** System Message **\n\nYou are a professional cinematic prompt generator for AI video tools. Your task is to convert a short-form video idea and its environment description (inspired by biblical or ancient-world themes) into a highly detailed, camera-aware, emotionally rich prompt suitable for generating a cinematic AI video using Veo3.\n\nYou must understand the emotional tone, visual aesthetics, and storytelling style of short-form TikTok videos that imitate biblical scenes with modern pacing and framing.\n\n** Veo3 Prompt Structure Guidelines **\n\nEach prompt should be natural, cinematic, and visually immersive, including:\n\n- Scene description – Describe the overall environment clearly (terrain, buildings, light, movement).\n- Character focus – If the idea involves a person, include their position, outfit style (biblical era), mood/expression, and framing (e.g., close-up, wide shot).\n- Camera movement – Always include one cinematic camera motion (e.g., slow push-in, handheld tracking, drone pan, orbit, dolly backward).\n- Time of day & lighting – Set the mood with light (e.g., golden hour, harsh daylight, candlelit interior).\n- Atmosphere & texture – Mention dust, wind, fabric movement, shadows, reflections, or imperfections in the scene to increase realism.\n- Style & quality – Include cinematic tone, analog warmth, slightly soft vintage film look, GoPro-like closeness if appropriate.\n\n** Input **\n- You will receive two fields: idea, environment\n- Return only the complete and detailed Veo3 prompt, no additional text.\n\n** Example Output **\nA biblical man stands in front of a half-built wooden ark, gesturing passionately as he explains something to the camera. The camera follows him handheld-style, moving slightly as he paces. In the background, groups of villagers are laughing and pointing. The sky is overcast with low clouds, and goats wander through muddy terrain. The man wears worn, ancient robes, his feet muddy, his tone frustrated but hopeful. The scene has a documentary-style realism, with soft golden highlights breaking through cloud gaps. Light wind moves fabric and rustles dry straw around the ark. Shot in cinematic 24fps with natural tones and slight vintage softness."
        },
        "promptType": "define"
      },
      "typeVersion": 1.9
    },
    {
      "id": "8e5c1d35-3664-4630-994c-0df329ab0341",
      "name": "ビデオ作成",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -288,
        -320
      ],
      "parameters": {
        "url": "https://queue.fal.run/fal-ai/veo3",
        "body": "={ \"prompt\": \"{{ $('Generate Veo3 Prompt').item.json.output }}\" }",
        "method": "POST",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1,
              "batchInterval": 2000
            }
          }
        },
        "sendBody": true,
        "contentType": "raw",
        "authentication": "genericCredentialType",
        "rawContentType": "application/json",
        "genericAuthType": "httpHeaderAuth"
      },
      "typeVersion": 4.2
    },
    {
      "id": "c3080d20-1952-4456-a175-4df985dad72e",
      "name": "ビデオ取得",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -288,
        80
      ],
      "parameters": {
        "url": "=https://queue.fal.run/fal-ai/veo3/requests/{{ $json.request_id }}\n",
        "options": {},
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth"
      },
      "typeVersion": 4.2
    },
    {
      "id": "525a1ba7-d51e-4c1d-bd78-416b3c545339",
      "name": "10分間待機",
      "type": "n8n-nodes-base.wait",
      "position": [
        -288,
        -128
      ],
      "webhookId": "9fdae74d-0f36-4408-9c09-5fb55e66fed1",
      "parameters": {
        "amount": 10
      },
      "typeVersion": 1.1
    },
    {
      "id": "eba3a1ef-cf20-4a49-b7e0-94222d83d331",
      "name": "ビデオ保存",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        208,
        -80
      ],
      "parameters": {
        "columns": {
          "value": {
            "Video URL": "={{ $json.video.url }}"
          },
          "schema": [
            {
              "id": "Idea",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Idea",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Captions",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Captions",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Environment",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Environment",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Video URL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Video URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1JsQWTq-ozkDD4VRaUEe34IzVFhig4HlWPIh0ZelyQ2E/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1JsQWTq-ozkDD4VRaUEe34IzVFhig4HlWPIh0ZelyQ2E",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1JsQWTq-ozkDD4VRaUEe34IzVFhig4HlWPIh0ZelyQ2E/edit?usp=drivesdk",
          "cachedResultName": "Veo3 Videos"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "b807cf27-6520-4e72-8136-2919e3adeb94",
      "name": "コンテンツ情報保存",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -512,
        -128
      ],
      "parameters": {
        "columns": {
          "value": {
            "Idea": "={{ $('Generate Video Idea').first().json.output.idea }}",
            "Status": "={{ $('Generate Video Idea').first().json.output.status }}",
            "Captions": "={{ $('Generate Video Idea').first().json.output.caption }}",
            "Environment": "={{ $('Generate Video Idea').first().json.output.environment }}"
          },
          "schema": [
            {
              "id": "Idea",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Idea",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Captions",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Captions",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Environment",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Environment",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Video URL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Video URL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1JsQWTq-ozkDD4VRaUEe34IzVFhig4HlWPIh0ZelyQ2E/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1JsQWTq-ozkDD4VRaUEe34IzVFhig4HlWPIh0ZelyQ2E",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1JsQWTq-ozkDD4VRaUEe34IzVFhig4HlWPIh0ZelyQ2E/edit?usp=drivesdk",
          "cachedResultName": "Veo3 Videos"
        }
      },
      "typeVersion": 4.5
    }
  ],
  "pinData": {
    "Get Video": [
      {
        "video": {
          "url": "https://v3.fal.media/files/panda/7s5NhlkFCz7rHszxLvfyB_output.mp4",
          "file_name": "output.mp4",
          "file_size": 3899896,
          "content_type": "video/mp4"
        }
      }
    ],
    "Create Video": [
      {
        "logs": null,
        "status": "IN_QUEUE",
        "metrics": {},
        "cancel_url": "https://queue.fal.run/fal-ai/veo3/requests/2ba961db-0c1c-4bd3-954c-905b905c1dcb/cancel",
        "request_id": "2ba961db-0c1c-4bd3-954c-905b905c1dcb",
        "status_url": "https://queue.fal.run/fal-ai/veo3/requests/2ba961db-0c1c-4bd3-954c-905b905c1dcb/status",
        "response_url": "https://queue.fal.run/fal-ai/veo3/requests/2ba961db-0c1c-4bd3-954c-905b905c1dcb",
        "queue_position": 0
      }
    ],
    "Generate Video Idea": [
      {
        "output": {
          "idea": "Moses updates his followers on his journey, only to panic when he discovers the tablets are missing again — comedic storytelling ensues.",
          "status": "to create",
          "caption": "When Moses realizes he’s lost the commandments again 📜🙄 #mosesvlog #holycomedy",
          "environment": "Mountainous backdrop with rugged rocks and a bright blue sky, warm sunlight casting shadows; Moses looks bewildered yet determined."
        }
      }
    ],
    "Generate Veo3 Prompt": [
      {
        "output": "In a stunning mountainous landscape, Moses stands atop a rocky outcrop, his expression a mix of bewilderment and determination as he addresses a diverse group of followers below. Dressed in ancient, flowing robes, his long hair blows slightly in the warm sunlight, which casts playful shadows on the rugged terrain. The vibrant blue sky stretches endlessly above, adding to the scene's dramatic feel. As he animatedly updates his followers, his tone oscillates between inspirational and comedic tension, suddenly shifting to panic as he realizes the tablets are missing again. The camera utilizes a slow push-in, capturing his increasing distress and the worried glances of the crowd. Dust kicks up gently around them, illuminated by the warm sunlight, enhancing the scene's comedic chaos. The atmosphere is lively and rich, with a vintage soft film quality evoking a sense of timeless storytelling."
      }
    ]
  },
  "connections": {
    "b5759496-3eaf-4d02-ab7c-82cf41361162": {
      "ai_tool": [
        [
          {
            "node": "8a94a444-28d0-42ac-8cb6-3040fb8769cc",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "c8412fba-deac-4e6c-9f22-176ead2a956e": {
      "ai_tool": [
        [
          {
            "node": "9d2f5cb6-9db8-4eca-bde0-e883e0fa4cd4",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "c3080d20-1952-4456-a175-4df985dad72e": {
      "main": [
        [
          {
            "node": "eba3a1ef-cf20-4a49-b7e0-94222d83d331",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8e5c1d35-3664-4630-994c-0df329ab0341": {
      "main": [
        [
          {
            "node": "525a1ba7-d51e-4c1d-bd78-416b3c545339",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "525a1ba7-d51e-4c1d-bd78-416b3c545339": {
      "main": [
        [
          {
            "node": "c3080d20-1952-4456-a175-4df985dad72e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cbbea0db-2557-48ef-a9ab-04a86a4437fa": {
      "main": [
        [
          {
            "node": "9d2f5cb6-9db8-4eca-bde0-e883e0fa4cd4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "41cc4339-6112-4939-a2df-a246d80f234c": {
      "ai_languageModel": [
        [
          {
            "node": "8a94a444-28d0-42ac-8cb6-3040fb8769cc",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "36337833-92cb-45ed-ac80-8ffd96b3c8a9": {
      "ai_languageModel": [
        [
          {
            "node": "9d2f5cb6-9db8-4eca-bde0-e883e0fa4cd4",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "9d2f5cb6-9db8-4eca-bde0-e883e0fa4cd4": {
      "main": [
        [
          {
            "node": "8a94a444-28d0-42ac-8cb6-3040fb8769cc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8a94a444-28d0-42ac-8cb6-3040fb8769cc": {
      "main": [
        [
          {
            "node": "b807cf27-6520-4e72-8136-2919e3adeb94",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b807cf27-6520-4e72-8136-2919e3adeb94": {
      "main": [
        [
          {
            "node": "8e5c1d35-3664-4630-994c-0df329ab0341",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "14a1ad4e-9fcb-443a-8627-b4802d1c994e": {
      "ai_outputParser": [
        [
          {
            "node": "9d2f5cb6-9db8-4eca-bde0-e883e0fa4cd4",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

このワークフローの使い方は?

上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。

このワークフローはどんな場面に適していますか?

上級

有料ですか?

このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。

ワークフロー情報
難易度
上級
ノード数16
カテゴリー-
ノードタイプ9
難易度説明

上級者向け、16ノード以上の複雑なワークフロー

作成者

AI Automation Consultant & Founder @ Brezix Studio, helping service businesses streamline operations with custom AI assistants, CRMs, and workflow automation. Skilled in MERN, Next.js, and Python, I design solutions that save time and boost efficiency. Open to collaborations and automation projects that drive growth.

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34