GPT-4o、ElevenLabs、WaveSpeed で口語同期してリアル UGC 動画広告を作る

上級

これはContent Creation, Multimodal AI分野の自動化ワークフローで、38個のノードを含みます。主にIf, Set, Wait, Switch, Telegramなどのノードを使用。 GPT-4o、ElevenLabs、WaveSpeedを使ってリアルなUGC動画広告のメロー同期を作成

前提条件
  • Telegram Bot Token
  • ターゲットAPIの認証情報が必要な場合あり
  • OpenAI API Key
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "meta": {
    "instanceId": "7914110285fa02b6fbc6c97080a41909334a12a40fb7c7c8ccd7922fbaeffe1b",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "61107d11-7270-4882-956b-49ad972a342f",
      "name": "付箋7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2944,
        720
      ],
      "parameters": {
        "color": 5,
        "width": 528,
        "height": 640,
        "content": "## Muhammad Farooq Iqbal - Automation Expert & n8n Creator\n\nI am a passionate automation expert and recognized n8n Creator specializing in intelligent workflow automation. With extensive experience in n8n, AI automation, Zapier, and Make.com, I have created innovative workflow templates with 500+ downloads across the global automation community\n\n### Expertise\n- **Workflow Automation**: n8n, Zapier, Make.com, AI automation\n- **AI Integration**: Gemini AI, API integration, data processing\n- **Platform Mastery**: Google Sheets, Google Drive, custom scripts\n\n## Need Help with This Workflow?\n\nIf you face any issues with this workflow or need customization support, feel free to reach out:\n\n**📧 Email**: mfarooqiqbal143@gmail.com  \n**📱 Phone**: +923036991118  \n**💼 LinkedIn**: [Connect with me](https://linkedin.com/in/muhammadfarooqiqbal)  \n**🌐 Portfolio**: [View my work](https://mfarooqone.github.io/n8n/)\n\n*I'm always excited to help with automation challenges and workflow optimization!*\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
      "name": "プロンプト製品レビュー",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        -1808,
        1280
      ],
      "parameters": {
        "text": "=Your task: Create an image prompt as guided by your system guidelines.\n\nYou shall make sure that the reference image is depicted as ACCURATELY as possible in the resulting images, especially all text.\n\nDescription of the reference image:\n{{ $json.content }}\n\n# Output\n- Dalam bahasa English\n- Berikan output TANPA tambahan kata atau simbol apapun termasuk tanda kutip\n- Tanda kutip ganti dengan simbol -",
        "batching": {},
        "messages": {
          "messageValues": [
            {
              "message": "=Buat satu fotografi testimoni produk profesional berdasarkan foto produk yang diberikan, saiz output gambar mestilah menggunakan aspect_ratio 9:16 sesuai dengan phone view\n\n\nPastikan sentiasa sertakan grain halus untuk kesan sinematik.\n\n#Arahan Utama\n\nTentukan terlebih dahulu sama ada produk tersebut boleh dipakai atau tidak.\n\n#Tetapan Asas\n\nHasilkan 1 babak unik review produk oleh watak utama.\n\nWatak ialah orang Malaysia sebenar yang kelihatan natural.\n\nWatak sedang memberi testimoni penggunaan produk dengan ekspresi jujur.\n\nTiada sebarang teks atau sarikata dalam gambar (nyatakan dalam prompt).\n\n#Watak\n\nJika watak tidak jelas, tambahkan keterangan berikut:\n\nLelaki atau perempuan berusia 25–30 tahun cantik atau handsome, pilih jantina yang sesuai dengan produk.\n\nGaya dan gerak-geri natural.\nPastikan dalam gambar akhir, watak seolah-olah memegang, menyentuh, atau menggunakan produk yang sedang diulas.\n\n#Jenis Produk\n\nFesyen: Tunjukkan model memakai pakaian atau aksesori tersebut.\n\nPerhiasan / Aksesori: Fokus pada model memakai perhiasan itu (close-up bahagian relevan).\n\nProduk yang tidak boleh dipakai: Watak hanya memegang atau membawa produk secara natural.\n\nHaiwan: Watak berdiri di sebelah haiwan dengan ekspresi ceria dan tenang.\n\nPerabot / alatan rumah: Watak menggunakan perabot atau alat tersebut mengikut fungsi sebenarnya.\n\n#Sudut & Gaya Foto\n\nPastikan keseluruhan gambar produk kelihatan jelas dan utuh seperti asalnya.\n\nGunakan sekurang-kurangnya 2–3 arahan kamera berikut:\n\nPaparan telefon iPhone terbaru,framing genggam,komposisi tidak simetri,cahaya semula jadi,bayangan lembut,sedikit blur pergerakan,auto exposure,tampilan tidak dipoles,grain halus\n\n#Suasana & Realisme\n\nTerima ketidaksempurnaan seperti:\n\ntekstur kulit semula jadi\n\nrambut sedikit berterabur\n\nlatar belakang agak sibuk\n\nGaya seolah-olah gambar sebenar, bukan hasil studio.\n\nWatak kelihatan tulus, santai, dan tidak berlebihan.\n\nTiada orang lain yang memegang kamera.\n\nDeskripsi produk akan dikirimkan kepada Anda. Balas hanya dengan prompt akhir, tidak ada yang lain, wajib TANPA / TIDAK BOLEH ADA SIMBOL tanda kutip ganda. \n"
            }
          ]
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.7
    },
    {
      "id": "80172961-c769-47cb-ab89-92d6b38d18a2",
      "name": "構造化出力パーサー",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -928,
        1504
      ],
      "parameters": {
        "autoFix": true,
        "jsonSchemaExample": "{\n\t\"caption\": \"caption\",\n\t\"textospeech\": \"text\"\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "8b28affe-3dbe-45a9-920b-d3163be8be47",
      "name": "TTS & 字幕1",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -992,
        1280
      ],
      "parameters": {
        "text": "=anda akan diberikan data description produk ini :\n\n{{ $('Analyze YAML').item.json.content }}",
        "options": {
          "systemMessage": "=Anda adalah **Sosial Media Manager**. anda akan diberikan **description produk dan karakter**.\n\n# Buatkan Text To Speech dan wajib dalam bahasa Malaysia mix english natural\n\n* **Konsep Automatic** (Anda yang buatkan secara kreatif tetapi mestilah masuk akal).\n* Durasi maximum **10 Saat Sahaja**.\n* Isi Text To Speech adalah **testimoni singkat atau review** yang menggambarkan pengalaman menggunakan produk di description, terasa **penuh emosi**, dan **memujuk orang lain untuk mencuba**.\n* Gunakan gaya percakapan yang **natural, menunjukkan expresi jelas, dan bersemangat**, seolah-olah anda betul-betul berpuas hati dengan produk tersebut.\n\n# Output\n\nTulis **Hantar terus hasil akhir tanpa tambahan lain**, **tanpa tambahan kata, simbol, atau tanda kutip** di awal mahupun akhir output.\n\n"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2.2
    },
    {
      "id": "cbf9ec2a-2d03-44e6-9e74-7b323fe9678f",
      "name": "YAML解析",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -976,
        752
      ],
      "parameters": {
        "text": "=Analisis gambar yang diberikan dan tentukan apakah gambar tersebut terutama menggambarkan sebuah produk atau karakter, atau KEDUANYA.\n\n# Jika gambar adalah sebuah produk, kembalikan analisis dalam format YAML dengan field berikut:\n\nbrand_name: (Nama brand yang terlihat di gambar, jika ada atau dapat disimpulkan)\ncolor_scheme:\n\nhex: (Kode hex dari setiap warna utama yang digunakan)\nname: (Nama description dari warna tersebut)\nfont_style: (Jelaskan jenis font atau gaya yang digunakan: serif/sans-serif, tebal/tipis, dll.)\nvisual_description: (Satu atau dua kata ringkas yang merangkumi apa yang terlihat pada gambar, abaikan latar belakang)\n\n# Jika gambar adalah sebuah karakter, kembalikan analisis dalam format YAML dengan field berikut:\n\ncharacter_name: (Nama karakter jika terlihat atau dapat disimpulkan)\ncolor_scheme:\n\nhex: (Kode hex dari setiap warna utama yang digunakan pada karakter)\nname: (Nama description dari warna tersebut)\noutfit_style: (description gaya pakaian, aksesori, atau feature menonjol yang lain)\nvisual_description: (Satu atau dua kata ringkas yang merangkum terlihat pada karakter, abaikan latar belakang)\n\nkenalpasti produk sesuai untuk lelakki atau perempuan, dan juga adakah produk tersebut unisex\n\nHanya kembalikan YAML. Jangan menjelaskan atau menambahkan kata, simbol atau komentar lain.\nOutput dalam bahasa English\n\nJika gambar adalah KEDUANYA, kembalikan kedua deskripsi seperti panduan di atas dalam format YAML",
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "chatgpt-4o-latest",
          "cachedResultName": "CHATGPT-4O-LATEST"
        },
        "options": {},
        "resource": "image",
        "imageUrls": "=https://api.telegram.org/file/bot{{ $('Set Bot Token').item.json['bot id'] }}/{{ $json.result.file_path }}",
        "operation": "analyze"
      },
      "credentials": {
        "openAiApi": {
          "id": "aU3oyDayilaqb6iD",
          "name": "OpenAi account D"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "24335a64-d6d8-4bcd-88a7-5f290a78a4e3",
      "name": "OpenAIチャットモデル4",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -1376,
        1600
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "aU3oyDayilaqb6iD",
          "name": "OpenAi account D"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "19a41615-17ca-477c-983d-877b5345c78a",
      "name": "待機5",
      "type": "n8n-nodes-base.wait",
      "position": [
        -1456,
        1280
      ],
      "webhookId": "47b96955-f67e-4b58-b71d-b743286be320",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "45bff024-ce1e-4677-8e1e-d5433035c492",
      "name": "条件分岐3",
      "type": "n8n-nodes-base.if",
      "position": [
        -1136,
        2976
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "9835b082-c46b-4a11-a27e-7079cd2c3771",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.data.status }}",
              "rightValue": "completed"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "4dbe6920-2390-4c86-a903-e46e26577a3f",
      "name": "ElevenLabs音声データ抽出",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        -1360,
        2256
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery",
        "destinationKey": "=data"
      },
      "typeVersion": 1
    },
    {
      "id": "f048b919-ebad-44c4-b6de-18887898c3c5",
      "name": "音声をWAV形式に変換(女性ボイス)",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        -1136,
        2256
      ],
      "parameters": {
        "options": {
          "mimeType": "audio/wav"
        },
        "operation": "toBinary",
        "sourceProperty": "data",
        "binaryPropertyName": "=data"
      },
      "typeVersion": 1.1
    },
    {
      "id": "dc2012ab-984e-4825-862a-6f07707bc132",
      "name": "性別切替",
      "type": "n8n-nodes-base.switch",
      "position": [
        -1808,
        2352
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "perempuan",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "38d1a55f-6aa5-4963-9e48-fb7533e465b4",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.content }}",
                    "rightValue": "perempuan"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "lelaki",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "ae933594-4a20-4946-b550-03732f266124",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $json.content }}",
                    "rightValue": "lelaki"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "e225d3b3-fd2e-46b2-bd18-0b0e454d367f",
      "name": "音声クローニングCE",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1584,
        2256
      ],
      "parameters": {
        "url": "https://api.elevenlabs.io/v1/text-to-speech/UcqZLa941Kkt8ZhEEybf",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"text\": \"{{ $('TTS & CAPTION1').item.json.output.textospeech }}\",\n  \"model_id\": \"eleven_multilingual_v2\"\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "xi-api-key",
              "value": "YOUR_ELEVENLABS_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "590c6447-7681-4076-82d1-039a4f009a44",
      "name": "ElevenLabs音声データ抽出(男性)",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        -1360,
        2448
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery",
        "destinationKey": "=data"
      },
      "typeVersion": 1
    },
    {
      "id": "b4fb1721-f909-407f-a0ce-473261914ad9",
      "name": "音声をWAV形式に変換(男性ボイス)",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        -1136,
        2448
      ],
      "parameters": {
        "options": {
          "mimeType": "audio/wav"
        },
        "operation": "toBinary",
        "sourceProperty": "data",
        "binaryPropertyName": "=data"
      },
      "typeVersion": 1.1
    },
    {
      "id": "5723ded8-b897-4a95-b6c0-b3ffb267fb89",
      "name": "音声クローニングCO",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1584,
        2448
      ],
      "parameters": {
        "url": "https://api.elevenlabs.io/v1/text-to-speech/lMSqoJeA0cBBNA9FeHAs",
        "method": "POST",
        "options": {},
        "jsonBody": "={\n  \"text\": \"{{ $('TTS & CAPTION1').item.json.output.textospeech }}\",\n  \"model_id\": \"eleven_multilingual_v2\"\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "xi-api-key",
              "value": "YOUR_ELEVENLABS_API_KEY"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "86f1b593-97e0-482a-9eb5-3baba3a9228f",
      "name": "口型同期用音声アップロード",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -912,
        2352
      ],
      "parameters": {
        "url": "https://api.cloudinary.com/v1_1/YOUR_CLOUDINARY_CLOUD_NAME/auto/upload",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "file",
              "parameterType": "formBinaryData",
              "inputDataFieldName": "data"
            },
            {
              "name": "upload_preset",
              "value": "Picture"
            }
          ]
        },
        "genericAuthType": "httpBasicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "NvNiZpPploGsDbKY",
          "name": "Unnamed credential 2"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "be462716-ca7b-4f48-b3b8-28911cef578d",
      "name": "条件分岐4",
      "type": "n8n-nodes-base.if",
      "position": [
        -1232,
        1280
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "7e6516d2-b83b-47ad-b481-12329ad95d93",
              "operator": {
                "type": "string",
                "operation": "notContains"
              },
              "leftValue": "={{ $('PROMPT PRODUK REVIEW').item.json.text }}",
              "rightValue": "\""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "8b51c9ce-fa77-4151-8353-886c07eb33b9",
      "name": "140秒待機",
      "type": "n8n-nodes-base.wait",
      "position": [
        -1584,
        2976
      ],
      "webhookId": "c946501f-fbc7-4128-bbc9-1c4ac4d9549e",
      "parameters": {
        "amount": 140
      },
      "typeVersion": 1.1
    },
    {
      "id": "c415ece3-4275-4d3d-bce4-c02072c66a25",
      "name": "条件分岐5",
      "type": "n8n-nodes-base.if",
      "position": [
        -640,
        1280
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "f956c9c4-79e8-4f55-a227-d7c6a5365c6b",
              "operator": {
                "type": "string",
                "operation": "notContains"
              },
              "leftValue": "={{ $json.output.caption }}",
              "rightValue": "\""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "a98e088d-bd9a-46ac-8de2-a9b12c0a8b59",
      "name": "口型同期作成 V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1808,
        2976
      ],
      "parameters": {
        "url": "https://api.wavespeed.ai/api/v3/wavespeed-ai/infinitetalk",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendBody": true,
        "sendHeaders": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "audio",
              "value": "={{ $('UPLOAD AUDIO LIPSYNC').item.json.secure_url }}"
            },
            {
              "name": "image",
              "value": "={{ $('UPLOAD NEW IMG V1').item.json.secure_url }}"
            },
            {
              "name": "prompt",
              "value": "=Natural everyday motion, subtle realistic actions.. kadang-kadang melihat, menyentuh dengan satu atau dua tangan mengikut kesuaian kegunaan produk, character juga boleh menunjuk ke produk sambil tetap melihat ke arah kamera hadapan"
            },
            {
              "name": "resolution",
              "value": "480p"
            },
            {
              "name": "seed",
              "value": "-1"
            },
            {}
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "e05a370a-3414-4b36-a16b-b3a78543cb12",
      "name": "レビュー動画アップロード V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -912,
        2960
      ],
      "parameters": {
        "url": "https://api.cloudinary.com/v1_1/YOUR_CLOUDINARY_CLOUD_NAME/auto/upload",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "file",
              "value": "={{ $json.data.outputs[0] }}"
            },
            {
              "name": "upload_preset",
              "value": "Picture"
            }
          ]
        },
        "genericAuthType": "httpBasicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "NvNiZpPploGsDbKY",
          "name": "Unnamed credential 2"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "f70d9c8e-57fc-4e2f-9ebd-5c7d39e4d62a",
      "name": "待機",
      "type": "n8n-nodes-base.wait",
      "position": [
        -752,
        752
      ],
      "webhookId": "34c44f13-73c4-437b-b260-9082d5902f08",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "2f208089-21ba-44c2-81c7-f8e70d0902f6",
      "name": "新規画像作成1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1808,
        1824
      ],
      "parameters": {
        "url": "https://api.wavespeed.ai/api/v3/google/nano-banana/edit",
        "method": "POST",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "jsonBody": "={\n  \"aspect_ratio\": \"9:16\",\n  \"enable_base64_output\": false,\n  \"enable_sync_mode\": false,\n  \"images\": [\n    \"https://api.telegram.org/file/bot{{ $('Set Bot Token').item.json['bot id'] }}/{{ $('Image Path (getFile)').item.json.result.file_path }}\"\n  ],\n  \"output_format\": \"jpeg\",\n  \"prompt\": \"{{ $('PROMPT PRODUK REVIEW').item.json.text }}\"\n}",
        "sendBody": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "ac00d570-f904-4200-a519-9f905374246a",
      "name": "65秒待機1",
      "type": "n8n-nodes-base.wait",
      "position": [
        -1584,
        1824
      ],
      "webhookId": "c946501f-fbc7-4128-bbc9-1c4ac4d9549e",
      "parameters": {
        "amount": 65
      },
      "typeVersion": 1.1
    },
    {
      "id": "3e3d0500-359c-425d-b2e0-6a206b23310e",
      "name": "条件分岐1",
      "type": "n8n-nodes-base.if",
      "position": [
        -1136,
        1824
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "9835b082-c46b-4a11-a27e-7079cd2c3771",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.data.status }}",
              "rightValue": "completed"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "87481d57-6f97-4c92-b4bf-d59e230cd702",
      "name": "新規画像ステータス取得1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1360,
        1824
      ],
      "parameters": {
        "url": "=https://api.wavespeed.ai/api/v3/predictions/{{ $json.data.id }}/result",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "retryOnFail": false,
      "typeVersion": 4.2,
      "waitBetweenTries": 3000
    },
    {
      "id": "601d1712-c1d8-4035-bb5b-3f186bee3a8f",
      "name": "新規画像アップロード V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -912,
        1920
      ],
      "parameters": {
        "url": "https://api.cloudinary.com/v1_1/YOUR_CLOUDINARY_CLOUD_NAME/auto/upload",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "file",
              "value": "={{ $json.data.outputs[0] }}"
            },
            {
              "name": "upload_preset",
              "value": "Picture"
            }
          ]
        },
        "genericAuthType": "httpBasicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "NvNiZpPploGsDbKY",
          "name": "Unnamed credential 2"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "b68551d3-4fa5-462a-9523-9b95682cd47d",
      "name": "口型同期ステータス取得 V1",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1360,
        2976
      ],
      "parameters": {
        "url": "=https://api.wavespeed.ai/api/v3/predictions/{{ $json.data.id }}/result",
        "options": {
          "redirect": {
            "redirect": {}
          }
        },
        "sendHeaders": true,
        "headerParameters": {
          "parameters": [
            {
              "name": "Authorization",
              "value": "Bearer YOUR_TOKEN_HERE"
            }
          ]
        }
      },
      "retryOnFail": false,
      "typeVersion": 4.2,
      "waitBetweenTries": 3000
    },
    {
      "id": "f64964fb-e44d-43f0-8a94-30ad128bd8bb",
      "name": "Telegramトリガー",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -1872,
        752
      ],
      "webhookId": "54e3bc4b-608f-4432-8c03-811c75afa4b1",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "GAEE7YofmSUolvTh",
          "name": "Viral CCTV animal"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "97029fa3-d4da-4507-9bfa-505dcbff8295",
      "name": "ボットトークン設定",
      "type": "n8n-nodes-base.set",
      "position": [
        -1648,
        752
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "e4524d93-d12a-47aa-a6bf-c15e6d1b29c1",
              "name": "bot id",
              "type": "string",
              "value": "YOUR_TELEGRAM_BOT_TOKEN"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "28386600-e8dc-4ecd-92cc-7cab0249ba6f",
      "name": "画像パス(getFile)",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1424,
        752
      ],
      "parameters": {
        "url": "=https://api.telegram.org/bot{{ $json['bot id'] }}/getFile?file_id={{ $('Telegram Trigger').item.json.message.photo[0].file_id }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "4ab95eb8-27f8-47eb-8ac6-e912d7866a4f",
      "name": "ファイルダウンロード → 画像",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1200,
        752
      ],
      "parameters": {
        "url": "=https://api.telegram.org/file/bot{{ $('Set Bot Token').item.json['bot id'] }}/{{ $json.result.file_path }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "aca9fc24-cd9d-4f59-a419-e262af880e13",
      "name": "動画送信",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -688,
        2960
      ],
      "webhookId": "fb0598c7-fc18-478b-b88d-cc961c43f430",
      "parameters": {
        "file": "={{ $json.url }}",
        "chatId": "52664079",
        "operation": "sendVideo",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "GAEE7YofmSUolvTh",
          "name": "Viral CCTV animal"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "dc3e4287-cfef-43be-bd56-0a9a9349d189",
      "name": "写真メッセージ送信",
      "type": "n8n-nodes-base.telegram",
      "position": [
        -912,
        1728
      ],
      "webhookId": "fb0598c7-fc18-478b-b88d-cc961c43f430",
      "parameters": {
        "file": "={{ $json.data.outputs[0] }}",
        "chatId": "52664079",
        "operation": "sendPhoto",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "GAEE7YofmSUolvTh",
          "name": "Viral CCTV animal"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "13229295-84ec-43be-a374-d597b41cb0dc",
      "name": "新規画像解析2",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -688,
        1920
      ],
      "parameters": {
        "text": "=Analisis gambar yang diberikan dan tentukan gender dari karakter yang ada di gambar adakah : \n\n- Lelaki \natau \n- Perempuan\n\n# Output\nHuruf kecil semua \nKembalikan output tanpa ada tambahan kata atau simbol apapun",
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "chatgpt-4o-latest",
          "cachedResultName": "CHATGPT-4O-LATEST"
        },
        "options": {},
        "resource": "image",
        "imageUrls": "={{ $json.secure_url }}",
        "operation": "analyze"
      },
      "credentials": {
        "openAiApi": {
          "id": "aU3oyDayilaqb6iD",
          "name": "OpenAi account D"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "4377c00f-f918-484a-970b-6c99f6563ac4",
      "name": "付箋6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2368,
        1376
      ],
      "parameters": {
        "width": 400,
        "height": 992,
        "content": "## 🔧 Complete Setup & Integration Guide\n\n**📋 Required API Keys & Services:**\n\n1. **OpenAI API**\n   • Get from: https://platform.openai.com/api-keys\n   • Used for: GPT-4 Vision image analysis\n   • Add to: OpenAI Chat Model4 & Analyze YAML nodes\n\n2. **ElevenLabs API**\n   • Get from: https://elevenlabs.io/app/settings/api-keys\n   • Used for: Voice cloning & text-to-speech\n   • Replace 'YOUR_ELEVENLABS_API_KEY' in CLONING AUDIO nodes\n   • Voice IDs: Male (UcqZLa941Kkt8ZhEEybf), Female (lMSqoJeA0cBBNA9FeHAs)\n\n3. **WaveSpeed AI API**\n   • Get from: https://wavespeed.ai/\n   • Used for: Image generation & lip-sync video creation\n   • Replace 'YOUR_WAVESPEED_API_KEY' in CREATE nodes\n\n4. **Cloudinary API**\n   • Get from: https://cloudinary.com/console\n   • Used for: File hosting & storage\n   • Replace 'YOUR_CLOUDINARY_CLOUD_NAME' in UPLOAD nodes\n   • Set upload preset to 'Picture'\n\n5. **Telegram Bot Token**\n   • Create bot via @BotFather on Telegram\n   • Replace 'YOUR_TELEGRAM_BOT_TOKEN' in Set Bot Token node\n   • Set chat ID for final delivery\n\n**⚡ Quick Setup Steps:**\n1. Copy all API keys to respective nodes\n2. Configure Cloudinary upload preset\n3. Test with a product image via Telegram bot\n4. Monitor processing times (65s for images, 140s for videos)\n\n**📤 Expected Output:** Professional testimonial video delivered via Telegram"
      },
      "typeVersion": 1
    },
    {
      "id": "41c2a2fa-dd68-4bb1-9c8a-af4c7d721ff7",
      "name": "付箋10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2384,
        720
      ],
      "parameters": {
        "color": 5,
        "width": 420,
        "height": 640,
        "content": "## 🎬 Create Authentic UGC Video Ads with GPT-4o, ElevenLabs & WaveSpeed Lip-Sync\n\n**What it does:** AI-powered workflow to create authentic-looking customer testimonial videos with voice synthesis and lip-sync technology\n\n**How it works:**\n1. 📱 Receives product image via Telegram bot\n2. 🤖 GPT-4o Vision analyzes product, colors, brand, demographics\n3. 📝 AI generates authentic testimonial scripts and prompts\n4. 🎨 WaveSpeed AI creates realistic customer review images\n5. 🎤 ElevenLabs generates natural voice-over (Malay/English)\n6. 👄 WaveSpeed AI syncs audio with character lip movements\n7. 📤 Delivers final UGC video via Telegram\n\n**Tech Stack:** GPT-4o, ElevenLabs, WaveSpeed AI, Cloudinary\n**Processing Time:** ~3-5 minutes per video\n**Output:** 480p testimonial videos ready for TikTok/Instagram"
      },
      "typeVersion": 1
    },
    {
      "id": "592a4409-86eb-4a19-bcf2-a16cc9a07cbb",
      "name": "付箋13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2368,
        2384
      ],
      "parameters": {
        "color": 3,
        "width": 400,
        "height": 688,
        "content": "## ⚖️ Ethical AI Content Generation\n\n**🧭 Responsible AI Use Guidelines:**\n\n**✅ DO:**\n• Clearly label AI-generated content as synthetic\n• Use for legitimate marketing and advertising\n• Respect platform terms of service\n• Ensure content is honest about product claims\n• Comply with local advertising regulations\n\n**❌ DON'T:**\n• Mislead viewers about product authenticity\n• Create false or deceptive reviews\n• Generate content without proper disclosure\n• Violate copyright or impersonate individuals\n• Use for misinformation or scams\n\n**📋 Compliance Checklist:**\n• [ ] Content complies with platform policies\n• [ ] Synthetic content is clearly disclosed\n• [ ] Product claims are truthful and verifiable\n• [ ] You have rights to use product imagery\n• [ ] Voice cloning complies with ElevenLabs TOS\n• [ ] Generated faces don't resemble real people\n\n**🌍 Platform-Specific Requirements:**\n• TikTok: #Ad disclosure required\n• Instagram: Paid Partnership label\n• YouTube: Sponsored content disclosure\n• Facebook: Ad transparency requirements\n\n**💬 When in doubt:** Consult legal counsel for advertising compliance in your jurisdiction."
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "3e3d0500-359c-425d-b2e0-6a206b23310e": {
      "main": [
        [
          {
            "node": "601d1712-c1d8-4035-bb5b-3f186bee3a8f",
            "type": "main",
            "index": 0
          },
          {
            "node": "dc3e4287-cfef-43be-bd56-0a9a9349d189",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "ac00d570-f904-4200-a519-9f905374246a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "45bff024-ce1e-4677-8e1e-d5433035c492": {
      "main": [
        [
          {
            "node": "e05a370a-3414-4b36-a16b-b3a78543cb12",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "8b51c9ce-fa77-4151-8353-886c07eb33b9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "be462716-ca7b-4f48-b3b8-28911cef578d": {
      "main": [
        [
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c415ece3-4275-4d3d-bce4-c02072c66a25": {
      "main": [
        [
          {
            "node": "2f208089-21ba-44c2-81c7-f8e70d0902f6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f70d9c8e-57fc-4e2f-9ebd-5c7d39e4d62a": {
      "main": [
        [
          {
            "node": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "19a41615-17ca-477c-983d-877b5345c78a": {
      "main": [
        [
          {
            "node": "be462716-ca7b-4f48-b3b8-28911cef578d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8b51c9ce-fa77-4151-8353-886c07eb33b9": {
      "main": [
        [
          {
            "node": "b68551d3-4fa5-462a-9523-9b95682cd47d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ac00d570-f904-4200-a519-9f905374246a": {
      "main": [
        [
          {
            "node": "87481d57-6f97-4c92-b4bf-d59e230cd702",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cbf9ec2a-2d03-44e6-9e74-7b323fe9678f": {
      "main": [
        [
          {
            "node": "f70d9c8e-57fc-4e2f-9ebd-5c7d39e4d62a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "97029fa3-d4da-4507-9bfa-505dcbff8295": {
      "main": [
        [
          {
            "node": "28386600-e8dc-4ecd-92cc-7cab0249ba6f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "dc2012ab-984e-4825-862a-6f07707bc132": {
      "main": [
        [
          {
            "node": "e225d3b3-fd2e-46b2-bd18-0b0e454d367f",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "5723ded8-b897-4a95-b6c0-b3ffb267fb89",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8b28affe-3dbe-45a9-920b-d3163be8be47": {
      "main": [
        [
          {
            "node": "c415ece3-4275-4d3d-bce4-c02072c66a25",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2f208089-21ba-44c2-81c7-f8e70d0902f6": {
      "main": [
        [
          {
            "node": "ac00d570-f904-4200-a519-9f905374246a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "13229295-84ec-43be-a374-d597b41cb0dc": {
      "main": [
        [
          {
            "node": "dc2012ab-984e-4825-862a-6f07707bc132",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e225d3b3-fd2e-46b2-bd18-0b0e454d367f": {
      "main": [
        [
          {
            "node": "4dbe6920-2390-4c86-a903-e46e26577a3f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5723ded8-b897-4a95-b6c0-b3ffb267fb89": {
      "main": [
        [
          {
            "node": "590c6447-7681-4076-82d1-039a4f009a44",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f64964fb-e44d-43f0-8a94-30ad128bd8bb": {
      "main": [
        [
          {
            "node": "97029fa3-d4da-4507-9bfa-505dcbff8295",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a98e088d-bd9a-46ac-8de2-a9b12c0a8b59": {
      "main": [
        [
          {
            "node": "8b51c9ce-fa77-4151-8353-886c07eb33b9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "601d1712-c1d8-4035-bb5b-3f186bee3a8f": {
      "main": [
        [
          {
            "node": "13229295-84ec-43be-a374-d597b41cb0dc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "24335a64-d6d8-4bcd-88a7-5f290a78a4e3": {
      "ai_languageModel": [
        [
          {
            "node": "b7032772-7423-43f9-b6af-1b7abe7e06d3",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "80172961-c769-47cb-ab89-92d6b38d18a2",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "87481d57-6f97-4c92-b4bf-d59e230cd702": {
      "main": [
        [
          {
            "node": "3e3d0500-359c-425d-b2e0-6a206b23310e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "28386600-e8dc-4ecd-92cc-7cab0249ba6f": {
      "main": [
        [
          {
            "node": "4ab95eb8-27f8-47eb-8ac6-e912d7866a4f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b7032772-7423-43f9-b6af-1b7abe7e06d3": {
      "main": [
        [
          {
            "node": "19a41615-17ca-477c-983d-877b5345c78a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "86f1b593-97e0-482a-9eb5-3baba3a9228f": {
      "main": [
        [
          {
            "node": "a98e088d-bd9a-46ac-8de2-a9b12c0a8b59",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b68551d3-4fa5-462a-9523-9b95682cd47d": {
      "main": [
        [
          {
            "node": "45bff024-ce1e-4677-8e1e-d5433035c492",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e05a370a-3414-4b36-a16b-b3a78543cb12": {
      "main": [
        [
          {
            "node": "aca9fc24-cd9d-4f59-a419-e262af880e13",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4ab95eb8-27f8-47eb-8ac6-e912d7866a4f": {
      "main": [
        [
          {
            "node": "cbf9ec2a-2d03-44e6-9e74-7b323fe9678f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "80172961-c769-47cb-ab89-92d6b38d18a2": {
      "ai_outputParser": [
        [
          {
            "node": "8b28affe-3dbe-45a9-920b-d3163be8be47",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "4dbe6920-2390-4c86-a903-e46e26577a3f": {
      "main": [
        [
          {
            "node": "f048b919-ebad-44c4-b6de-18887898c3c5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "590c6447-7681-4076-82d1-039a4f009a44": {
      "main": [
        [
          {
            "node": "b4fb1721-f909-407f-a0ce-473261914ad9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b4fb1721-f909-407f-a0ce-473261914ad9": {
      "main": [
        [
          {
            "node": "86f1b593-97e0-482a-9eb5-3baba3a9228f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f048b919-ebad-44c4-b6de-18887898c3c5": {
      "main": [
        [
          {
            "node": "86f1b593-97e0-482a-9eb5-3baba3a9228f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
よくある質問

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

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

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

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

有料ですか?

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

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

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

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34