Google Gemini AIを使って動画を分析 - フォームアップロードとYouTubeリンク

中級

これはContent Creation, Multimodal AI分野の自動化ワークフローで、15個のノードを含みます。主にSet, Wait, FormTrigger, HttpRequest, ManualTriggerなどのノードを使用。 Google Gemini AIを使って動画を分析 - フォームアップロードとYouTubeリンク

前提条件
  • ターゲットAPIの認証情報が必要な場合あり
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "meta": {
    "instanceId": "9f2d25c77f55013c8efee3de456573aadd7369e6f0aaea70d0311a32c92bead1"
  },
  "nodes": [
    {
      "id": "608b8d6d-3abc-4a53-aa81-5b6b13d9a874",
      "name": "分析結果の取得",
      "type": "n8n-nodes-base.httpRequest",
      "onError": "continueErrorOutput",
      "position": [
        736,
        304
      ],
      "parameters": {
        "url": "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"contents\": [\n    {\n      \"role\": \"user\",\n      \"parts\": [\n        {\n          \"fileData\": {\n            \"fileUri\": \"{{ $json.file.uri }}\",\n            \"mimeType\": \"{{ $json.file.mimeType }}\"\n          }\n        },\n        {\n          \"text\": \"Describe what's going on in the video in great detail. Describe the entire video.\"\n        }\n      ]\n    }\n  ]\n}\n",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpQueryAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "Content-Type",
              "value": "application/json"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "cfeadae7-65d6-4b79-823e-8db5024fac25",
      "name": "ファイルアップロード",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        960,
        64
      ],
      "parameters": {
        "url": "https://generativelanguage.googleapis.com/upload/v1beta/files",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "binaryData",
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpQueryAuth",
        "headerParameters": {
          "parameters": [
            {
              "name": "X-Goog-Upload-Command",
              "value": "start, upload, finalize"
            },
            {
              "name": "X-Goog-Upload-Header-Content-Length",
              "value": "={{ $binary.Video.fileSize }}"
            },
            {
              "name": "X-Goog-Upload-Header-Content-Type",
              "value": "={{ $binary.Video.fileType }}/{{ $binary.Video.fileExtension }}"
            },
            {
              "name": "Content-Type",
              "value": "={{ $binary.Video.fileType }}/{{ $binary.Video.fileExtension }}"
            }
          ]
        },
        "inputDataFieldName": "Video"
      },
      "typeVersion": 4.2
    },
    {
      "id": "89df5f59-2806-42dd-aa6e-7d5e1d6a0f07",
      "name": "5秒",
      "type": "n8n-nodes-base.wait",
      "position": [
        976,
        304
      ],
      "webhookId": "2ae152a3-3b31-497a-b285-8a19a7933c07",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "5150add7-edf5-49ca-92f9-385efcf8184b",
      "name": "フォーム送信時",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        720,
        64
      ],
      "webhookId": "d5b07e65-1bc8-4d57-9c91-e3f7531dbd08",
      "parameters": {
        "options": {},
        "formTitle": "Insert Video",
        "formFields": {
          "values": [
            {
              "fieldType": "file",
              "fieldLabel": "Video",
              "multipleFiles": false,
              "requiredField": true
            }
          ]
        },
        "formDescription": "Drop in a video for analysis."
      },
      "typeVersion": 2.2
    },
    {
      "id": "2e6a1e17-a406-485f-b5d6-2f1bbee090af",
      "name": "付箋",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        672,
        0
      ],
      "parameters": {
        "color": 7,
        "width": 220,
        "height": 220,
        "content": "## Form Trigger\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b8fc011e-f9da-4729-a88e-b1dcd4745a0b",
      "name": "付箋1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        912,
        0
      ],
      "parameters": {
        "color": 4,
        "width": 220,
        "height": 220,
        "content": "## Upload File\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ccba1069-f0fd-48e5-ab15-467142b72d02",
      "name": "付箋2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        688,
        240
      ],
      "parameters": {
        "color": 5,
        "width": 220,
        "height": 220,
        "content": "## Get Analysis\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "526c98ac-9783-4abd-aa31-ee9a14fe32a4",
      "name": "待機",
      "type": "n8n-nodes-base.wait",
      "position": [
        1200,
        64
      ],
      "webhookId": "bf2e644e-b6de-463f-938b-71c42da94efe",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "4996040a-b998-4eef-8a5a-3c4c316ed546",
      "name": "動画分析",
      "type": "n8n-nodes-base.set",
      "position": [
        1200,
        304
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "268682ab-62a0-4e6f-aea0-652b30325f70",
              "name": "Video Analysis",
              "type": "string",
              "value": "={{ $json.candidates[0].content.parts[0].text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "8d6f60d5-6063-41e3-b0b8-b5cc0076b313",
      "name": "付箋5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1136,
        240
      ],
      "parameters": {
        "color": 5,
        "width": 220,
        "height": 220,
        "content": "## Result\n\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "15f412e3-5958-4d8d-abab-7c7da62382fd",
      "name": "「ワークフローをテスト」クリック時",
      "type": "n8n-nodes-base.manualTrigger",
      "disabled": true,
      "position": [
        736,
        608
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "0cb0b756-1657-4c32-b9e0-63580319fe0a",
      "name": "YouTube 動画",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        960,
        608
      ],
      "parameters": {
        "url": "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent",
        "method": "POST",
        "options": {},
        "jsonBody": "{\n  \"contents\": [\n    {\n      \"parts\": [\n        {\n          \"text\": \"Please summarize the video in 3 sentences.\"\n        },\n        {\n          \"file_data\": {\n            \"file_uri\": \"https://youtu.be/gwCQF--cARA?si=uCbaUnoRlEjHO50a\"\n          }\n        }\n      ]\n    }\n  ]\n}",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "genericCredentialType",
        "genericAuthType": "httpQueryAuth"
      },
      "typeVersion": 4.2
    },
    {
      "id": "ffa376e6-4c1b-400e-8ead-98e7e5a6f8d2",
      "name": "結果の取得",
      "type": "n8n-nodes-base.set",
      "position": [
        1168,
        608
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "2103b25e-fbee-4d71-9224-280f1c2383da",
              "name": "text",
              "type": "string",
              "value": "={{ $json.candidates[0].content.parts[0].text }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "b838e099-4651-4561-92e1-36b856a50f06",
      "name": "付箋7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        672,
        528
      ],
      "parameters": {
        "color": 2,
        "width": 688,
        "height": 260,
        "content": "# YouTube Vision\n"
      },
      "typeVersion": 1
    },
    {
      "id": "7ae7e8a0-69ee-48a1-81a4-ef53af8805cb",
      "name": "付箋8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        0
      ],
      "parameters": {
        "width": 640,
        "height": 800,
        "content": "# 🛠️ Setup Guide  \n*Author: [Lee Wei]*\n\n### ✅ Step 1: Get Your Free API Key  \nGo to [**Google**](https://ai.google.dev/) and sign up to get your **free API key**.\n\nCreate your query authorization credential using that API key in the **HTTP Request** nodes that require a Google credential.\n\n\n### 🎬 Step 2: Drop in a Video  \nYou’re basically all set! Now you can:\n- Upload a video using the **Form Trigger**, **OR**\n- Drop in a **YouTube URL** to have it analyzed.\n---\n\nThat’s it — your video analysis agent is ready to go.\n"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "526c98ac-9783-4abd-aa31-ee9a14fe32a4": {
      "main": [
        [
          {
            "node": "608b8d6d-3abc-4a53-aa81-5b6b13d9a874",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "89df5f59-2806-42dd-aa6e-7d5e1d6a0f07": {
      "main": [
        [
          {
            "node": "608b8d6d-3abc-4a53-aa81-5b6b13d9a874",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "608b8d6d-3abc-4a53-aa81-5b6b13d9a874": {
      "main": [
        [
          {
            "node": "4996040a-b998-4eef-8a5a-3c4c316ed546",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "89df5f59-2806-42dd-aa6e-7d5e1d6a0f07",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cfeadae7-65d6-4b79-823e-8db5024fac25": {
      "main": [
        [
          {
            "node": "526c98ac-9783-4abd-aa31-ee9a14fe32a4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0cb0b756-1657-4c32-b9e0-63580319fe0a": {
      "main": [
        [
          {
            "node": "ffa376e6-4c1b-400e-8ead-98e7e5a6f8d2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5150add7-edf5-49ca-92f9-385efcf8184b": {
      "main": [
        [
          {
            "node": "cfeadae7-65d6-4b79-823e-8db5024fac25",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "15f412e3-5958-4d8d-abab-7c7da62382fd": {
      "main": [
        [
          {
            "node": "0cb0b756-1657-4c32-b9e0-63580319fe0a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

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

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

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

中級 - コンテンツ作成, マルチモーダルAI

有料ですか?

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

関連ワークフロー

OpenAI、RunwayML、ElevenLabsを使って無顔の短い動画を自動化
OpenAI、RunwayML、ElevenLabs を使ってアニメ顔の短い動画を自動化:スクリプトからソーシャルメディアへ
Set
Code
Wait
+
Set
Code
Wait
56 ノードLeeWei
コンテンツ作成
AI、Hedra、ElevenLabsでウイルスのなベイビー名前のPodcastを生成する
AI、Hedra、ElevenLabsを使ってウイルスのな赤ちゃん有名人のなポッドキャストを生成
Code
Wait
Merge
+
Code
Wait
Merge
35 ノードLeeWei
コンテンツ作成
OpenAI、ElevenLabs、Fal.ai を使用した動画・パ odcast・ASM R向けのウイルス性コンテンツ自動作成
OpenAI、ElevenLabs、そして Fal.ai を使って動画、ポッドキャスト、ASMR に向けたウイルスのコンテンツ作成を自動化
Set
Code
Wait
+
Set
Code
Wait
97 ノードAdam Crafts
コンテンツ作成
AI駆動のプロダクト動画ジェネレーター (Foreplay + Gemini + Sora 2)
Foreplay、Gemini、Sora 2を基盤としたAI駆動のプロダクト動画生成ワークフロー
Set
Wait
Switch
+
Set
Wait
Switch
18 ノードFahmi Fahreza
コンテンツ作成
テンプレートHP - コンテンツスケジュール
GPT-4、Apify、Google Sheetsを使ってInstagramコンテンツの自動スケジュール生成
Set
Code
Wait
+
Set
Code
Wait
24 ノードkeisha kalra
コンテンツ作成
WooCommerce Nano BananaのAIによるバーチャル試着
WooCommerce向けにFal.ai Nano Bananaを使用して、ビジual AIフィッティング画像を自動生成
If
Set
Wait
+
If
Set
Wait
20 ノードDavide
コンテンツ作成
ワークフロー情報
難易度
中級
ノード数15
カテゴリー2
ノードタイプ6
難易度説明

経験者向け、6-15ノードの中程度の複雑さのワークフロー

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34