wiwjxx

请叫我红领巾
管理成员
2022/05/11
2,939
87
12
38
金币
60,032金币
要做成“短视频去中文字幕 + 自动配音(多语言)”的全自动工作流,这属于 AI 视频本地化(Video Localization) 的范畴。
这需要两个并行的技术链路:
  1. 视觉处理(Visual):OCR 识别字幕位置 -> 视频修补(Inpainting)遮盖字幕。
  2. 音频处理(Audio):提取音频 -> 语音转文字(ASR)-> 翻译 -> 语音合成(TTS)-> 音画对齐(或唇形同步)。
根据你的技术背景(熟悉 Dify/n8n/Docker),我有三个梯度的方案推荐给你:

方案一:开源/本地部署(最省钱,硬核)​

如果你有 GPU 服务器(比如你之前的搬瓦工或者本地 4090),这是最灵活的方案。

1. 核心项目推荐​

目前 GitHub 上有两个集大成的开源项目能直接解决你的问题:
  • 项目 A: PyVideoTrans (强烈推荐)
    • GitHub: jianchang512/pyvideotrans
    • 功能: 这是一个整合包。它能自动识别视频里的语音,转录为字幕,翻译字幕,合成新的语音配音,并且支持自动去除原视频的硬字幕(使用 Inpainting 技术)。
    • 特点: 一站式解决。支持 DeepSeek、GPT-4 等作为翻译引擎,支持 EdgeTTS(免费)或 Azure/OpenAI(付费)作为配音。
    • 去字幕原理: 调用 OCR 识别字幕区域,然后使用 LaMa 模型进行像素填充遮盖。
  • 项目 B: Video-Subtitle-Remover (VSR)
    • GitHub: YaoFANGUK/video-subtitle-remover
    • 专注点: 这个项目只做一件事——去字幕。它的去字幕效果是目前开源界最好的之一,不仅能填补背景,还能处理动态背景。
    • 用法: 你可以用它处理视频画面,然后用 Dify/n8n 处理音频。

2. 推荐的本地架构​

  • 第一步(画面): 部署 Video-Subtitle-Remover,跑一遍视频,把中文字幕抹掉,生成 clean_video.mp4。
  • 第二步(音频): 使用 Whisper (ASR) 提取中文文本 -> 扔给 Dify (DeepSeek) 翻译成英文 -> 扔给 EdgeTTS 或 CosyVoice (阿里开源) 生成英文音频。
  • 第三步(合成): 使用 ffmpeg 将 clean_video.mp4 和新音频合并。

方案二:基于 n8n 的 API 编排流(最自动化,不用维护 GPU)​

如果你不想维护本地繁重的 Python 环境,可以利用 n8n 调用现成的 AI 模型 API(Replicate 或 HuggingFace)。
n8n 工作流设计:
  1. Trigger: 监控文件夹或接收 Upload。
  2. Step 1 - 去字幕 (Inpainting):
    • 调用 Replicate 上的去字幕模型(搜索 video-inpainting 或 lama-cleaner)。
    • 注意:API 去字幕通常需要提供 Mask(遮罩区域)。你可能需要先调用一个 OCR API (如 PaddleOCR) 算出字幕坐标,生成 Mask 图片,再传给 Inpainting API。这一步比较繁琐。
  3. Step 2 - 音频处理:
    • ASR: 调用 OpenAI Whisper API 转录中文。
    • Translation: 调用你 Dify 里的 DeepSeek 翻译 Agent(提示词:翻译为英语口语,保持短视频的快节奏风格)。
    • TTS: 调用 ElevenLabs (效果最好,贵) 或 OpenAI TTS 生成外语配音。
  4. Step 3 - 唇形同步 (可选):
    • 如果需要人物嘴型对上英文,调用 Replicate 上的 wav2lip 或 sadtalker 模型。
  5. Step 4 - 合成:
    • 利用 FFmpeg 节点(n8n 需安装 ffmpeg)或调用云端转码 API 合并。

方案三:成品 SaaS 工具(最快,但要钱)​

如果你只是想快速产出,不想折腾代码,市面上有非常成熟的“视频出海”工具:
  1. HeyGen / Rask.ai:
    • 目前的行业标杆。你上传中文视频,选“翻译成英文”。
    • 能力: 它们会自动把中文配音变成英文(甚至克隆你的原声),并且会自动修改嘴型(Video Lip Sync)。
    • 缺点: 遮挡字幕功能通常较弱(它们主要关注人脸),且价格昂贵。
  2. Veed.io:
    • 提供“Clean Audio”和字幕移除工具,适合轻量级编辑。

🚀 架构师建议(针对你的情况)​

考虑到你已经有 Dify + Mem0 + DeepSeek 的基础,我建议采用 “方案一 (开源集成)” 的变体,利用你的 Dify 作为翻译中枢:
  1. 部署 pyvideotrans:在你的 VPS 或本地电脑上运行这个开源项目。它已经写好了去字幕和 TTS 的逻辑。
  2. 魔改翻译接口:pyvideotrans 支持自定义 LLM API。
    • 把它默认的 ChatGPT 接口,指向你 Dify 的 API
    • 为什么要这么做? 因为你可以在 Dify 里写特定的 Prompt(比如:“翻译成美式俚语风格,适合 TikTok 传播”),甚至结合 Mem0 里的术语库,让翻译出来的梗更地道,而不是生硬的机翻。
总结路径:
下载 pyvideotrans -> 配置去字幕插件 -> 将翻译引擎配置为你的 Dify API -> 一键运行。这是目前性价比最高且效果可控的方案。