8
n8n 中文网amn8n.com

使用 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 - 自动化专家 & n8n 创作者"
      },
      "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": "文本转语音与字幕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": "图片路径(获取文件)",
      "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": "## 🔧 完整设置与集成指南"
      },
      "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": "## 🎬 使用 GPT-4o、ElevenLabs 和 WaveSpeed 口型同步创建真实 UGC 视频广告"
      },
      "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": "## ⚖️ 道德 AI 内容生成"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "If1": {
      "main": [
        [
          {
            "node": "UPLOAD NEW IMG V1",
            "type": "main",
            "index": 0
          },
          {
            "node": "Send a photo message",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait 65s1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If3": {
      "main": [
        [
          {
            "node": "UPLOAD VIDEO REVIEW V1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait 140s",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If4": {
      "main": [
        [
          {
            "node": "TTS & CAPTION1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "PROMPT PRODUK REVIEW",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If5": {
      "main": [
        [
          {
            "node": "CREATE NEW IMG1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "TTS & CAPTION1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait": {
      "main": [
        [
          {
            "node": "PROMPT PRODUK REVIEW",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait5": {
      "main": [
        [
          {
            "node": "If4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait 140s": {
      "main": [
        [
          {
            "node": "GET STATUS LIPSYNC V1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait 65s1": {
      "main": [
        [
          {
            "node": "GET STATUS NEW IMG1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Analyze YAML": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Bot Token": {
      "main": [
        [
          {
            "node": "Image Path (getFile)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch GENDER": {
      "main": [
        [
          {
            "node": "CLONING AUDIO CE",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "CLONING AUDIO CO",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "TTS & CAPTION1": {
      "main": [
        [
          {
            "node": "If5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "CREATE NEW IMG1": {
      "main": [
        [
          {
            "node": "Wait 65s1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Analyze IMG NEW2": {
      "main": [
        [
          {
            "node": "Switch GENDER",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "CLONING AUDIO CE": {
      "main": [
        [
          {
            "node": "Extract ElevenLabs Audio Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "CLONING AUDIO CO": {
      "main": [
        [
          {
            "node": "Extract ElevenLabs Audio Data (Male)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Telegram Trigger": {
      "main": [
        [
          {
            "node": "Set Bot Token",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "CREATE LIPSYNC V1": {
      "main": [
        [
          {
            "node": "Wait 140s",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "UPLOAD NEW IMG V1": {
      "main": [
        [
          {
            "node": "Analyze IMG NEW2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model4": {
      "ai_languageModel": [
        [
          {
            "node": "PROMPT PRODUK REVIEW",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "TTS & CAPTION1",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Structured Output Parser",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "GET STATUS NEW IMG1": {
      "main": [
        [
          {
            "node": "If1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Image Path (getFile)": {
      "main": [
        [
          {
            "node": "Download File → Gambar",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "PROMPT PRODUK REVIEW": {
      "main": [
        [
          {
            "node": "Wait5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "UPLOAD AUDIO LIPSYNC": {
      "main": [
        [
          {
            "node": "CREATE LIPSYNC V1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "GET STATUS LIPSYNC V1": {
      "main": [
        [
          {
            "node": "If3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "UPLOAD VIDEO REVIEW V1": {
      "main": [
        [
          {
            "node": "Send a video",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download File → Gambar": {
      "main": [
        [
          {
            "node": "Analyze YAML",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "TTS & CAPTION1",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Extract ElevenLabs Audio Data": {
      "main": [
        [
          {
            "node": "Convert Audio to WAV Format (Female Voice)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract ElevenLabs Audio Data (Male)": {
      "main": [
        [
          {
            "node": "Convert Audio to WAV Format (Male Voice)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Audio to WAV Format (Male Voice)": {
      "main": [
        [
          {
            "node": "UPLOAD AUDIO LIPSYNC",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert Audio to WAV Format (Female Voice)": {
      "main": [
        [
          {
            "node": "UPLOAD AUDIO LIPSYNC",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

高级 - 内容创作, 多模态 AI

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
高级
节点数量38
分类2
节点类型15
难度说明

适合高级用户,包含 16+ 个节点的复杂工作流

作者
外部链接
在 n8n.io 查看

分享此工作流