利用 n8n + 阿里云百炼悦动人像实现图生唱演视频自动化(全免费)流程

通过合理组合 n8n、阿里云百炼、Suno、Cloudinary 等工具,实现一个完全免费的图生唱演视频自动化流程。

阅读时长: 4 分钟
共 1749字
作者: eimoon.com

本教程通过免费工具组合,教你如何不花一分钱实现 AI 唱演视频的自动化生产流程 🚀

🎬 项目简介

本项目旨在通过自动化工具 n8n,整合多个 AI 服务,实现「上传一张图片 + 一首歌曲 → 自动生成唱演视频」的完整流程。我们将使用:

  • 📸 Together AICloudflare AI:生成人物形象图;
  • 🎵 Suno:生成 AI 歌曲;
  • 🤖 阿里云百炼·悦动人像 EMO:将图片驱动生成唱演视频;
  • ☁️ Cloudinary:托管视频文件,提供 CDN 链接;
  • 🔁 n8n:整合所有服务,实现自动化工作流。

🛠 技术栈与工具

工具/服务 作用
n8n 自动化流程平台
Together AI / Cloudflare AI 文生图 API
Suno AI 音乐生成
阿里云百炼 - 悦动人像 EMO 图片驱动唱演视频生成
Cloudinary CDN 图片/视频托管与分发

🧩 整体流程图

+---------+     +---------------+     +---------------+     +-------------------+     +-------------+
| 用户上传 | --> | 生成人物图像  | --> | AI歌曲生成    | --> | 唱演视频生成(EMO)| --> | 上传至CDN   |
+---------+     |(Together AI)|     |(Suno)       |     |(阿里云百炼)       |     |(Cloudinary)|
                +---------------+     +---------------+     +-------------------+     +-------------+

🧱 步骤详解

1️⃣ 图片生成:Together AI 或 Cloudflare AI

根据提示词调用 Together AI 或 Cloudflare AI 的文生图 API:

API 示例(Together AI)

curl -X POST "https://api.together.xyz/v1/images/generations" \
  -H "Authorization: Bearer $TOGETHER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "black-forest-labs/FLUX.1-dev",
    "prompt": "Cats eating popcorn",
    "steps": 10,
    "n": 4
   }'

将图片直接上传至 Cloudinary 或者类似的图床。

阿里云百炼的EMO,请求参数的图片和音乐,不能使用本地文件,需要直接上传到你的cdn(例如Cloudinary),如果使用Write Files from Disk 节点,保存到你的云服务器,需要在服务器配置公开你的文件,如果保存到本地,需要手动上传到你的cdn。

2️⃣ 音乐生成:Suno AI(或者ace-step)

使用 Suno 官方或非官方 API(如手动创建的 token)根据文本描述生成一段原创音乐。

⚠️ 注意:目前 Suno 的 API 并未全面公开,需要获取 Session Token 或使用第三方自动化脚本绕过。因此我们可以在suno网站生成,然后下载后,手动上传到我们的cdn。

🎯 上传文件到 CDN 的方式有多种:

• 可以在 n8n 中使用 Form 节点(比如 HTTP Request 节点的 multipart/form-data 格式)上传本地生成的文件,但这有点为了n8n而用n8n流程;

• 实际上,直接在后续请求中通过 URL 引用已经上传好的资源会更方便。

💡 所以选择哪种方式完全取决于你自己的偏好。

3️⃣ 图像检测(EMO 图像检测 API)

使用EMO视频生成,需要先调用阿里云百炼图像检测接口,验证上传的图像是否符合视频合成规范:

curl --location --request POST 'https://dashscope.aliyuncs.com/api/v1/services/aigc/image2video/face-detect' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data-raw '{
  "model": "emo-detect-v1",
  "input": {
      "image_url":"http://xxx/1.jpg"
  },
  "parameters": {
      "ratio": "1:1"
  }
}'

只有检测通过后才能继续执行视频生成,否则终止流程或返回错误提示。返回的结果如下:

{
    "output":{
        "check_pass": true, #检测通过
        "face_bbox":[10,20,30,40], #人脸bbox
        "ext_bbox": [40,60,80,90], #动态区域bbox,
    },
    "usage":{
        "image_count":1
    },
    "request_id":"c56f62df-724e-9c19-96bd-308627cf5262"
}

4️⃣ 唱演视频生成:EMO 视频合成

图片通过后,继续调用阿里云百炼的 EMO 接口:

face_bbox,和ext_bbox 从上一步验证图片的结果中获取

curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/image2video/video-synthesis/' \
--header 'X-DashScope-Async: enable' \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
    "model": "emo-v1",
    "input": {
        "image_url": "http://xxx/1.jpg",
        "audio_url": "http://xxx/1.wav",
        "face_bbox": [10, 20, 30, 40],
        "ext_bbox": [10, 20, 30, 40]
        },
    "parameters": {
        "style_level": "normal"
        }
    }'

图像格式:格式为jpg,jpeg,png,bmp,webp。

图像分辨率:图像最小边长≥400像素,最大边长≤7000像素。

图像坐标框:图像需先通过EMO图像检测API,以获得正确的人脸区域和动态区域坐标信息。

音频格式:格式为wav、mp3。

音频限制:文件<15M,时长<60s。

音频内容:音频中需包含清晰、响亮的人声语音,并去除了环境噪音、背景音乐等声音干扰信息。

上传图片、音频链接仅支持HTTP链接方式,不支持本地链接方式。

接口会返回一个 task_id,你需要使用该 ID 进行状态轮询。

5️⃣ 任务轮询与结果获取

每隔 若干(例如:45) 秒轮询接口以查询生成状态:

curl -X GET \
--header 'Authorization: Bearer <YOUR_API_KEY>' \
https://dashscope.aliyuncs.com/api/v1/tasks/<YOUR_TASK_ID>

成功后将返回视频下载 video_url。

{
    "output":{
        "task_id":"a8532587-fa8c-4ef8-82be-0c46b17950d1",
		"task_status":"SUCCEEDED",
        "results":
            {
                "video_url":"https://xxx/1.mp4"
            }
    },
    "usage":{
        "video_duration": 10.23,
        "video_ratio": "1:1"
    },
    "request_id":"7574ee8f-38a3-4b1e-9280-11c33ab46e51"
}

6️⃣ 结果处理与 CDN 托管

视频生成后可选择:

  • 将生成的视频通过 Cloudinary 的 API 上传,获得可嵌入、可分享的公开链接:
  • 上传至 Google Drive(使用 Drive API)

🔄 n8n 流程图简述

以下是 n8n 中的主要节点:

  1. Webhook(接收用户请求)
  2. HTTP Request(调用 Together AI 或 Suno)
  3. Function(整理参数)
  4. 阿里云 EMO 视频生成节点(HTTP + 轮询)
  5. Cloudinary 上传节点
  6. 响应节点(返回 CDN 视频地址)

✅ 成品展示(示意)

古风歌曲: 夏日午后:

🧠 后续可拓展功能

  • ✅ 自定义歌词驱动音乐生成;
  • ✅ 添加字幕与歌词动画;
  • ✅ 自动分享到抖音/B站;
  • ✅ 建立模板库,提升形象风格多样性。

关注我获取更多资讯

公众号
📢 公众号
个人号
💬 个人号
使用 Hugo 构建
主题 StackJimmy 设计