ComfyUI-MegaTTS
1038lab/ComfyUI-MegaTTS加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:深夜,你正在为一部纪录片旁白——但此刻嗓子干涩,声音沙哑。如果有一个工具,只需 10 秒的录音样本,就能克隆出你原本的声音,让 AI 替你完成配音,你会怎么想?这正是 ComfyUI-MegaTTS 所做的事情。
2024 年,字节跳动在语音合成领域放出了一枚重磅炸弹——MegaTTS3。这是一套基于扩散模型(Diffusion Model)和 Transformer 架构的中英双语 TTS 系统,在自然度、情感表达和声音相似度上均达到了业界领先水平。然而,原始模型以研究论文和 HuggingFace 模型权重形式发布,普通开发者想用它需要折腾复杂的推理代码。
1038lab 团队看准了这个痛点,开发了 ComfyUI-MegaTTS——一个将 MegaTTS3 无缝集成到 ComfyUI 工作流中的自定义节点。通过可视化节点拖拽,你可以轻松完成文字转语音、声音克隆等操作,完全不需要写一行代码。
ComfyUI-MegaTTS 的技术架构堪称精巧。整个系统由以下几个核心模块组成:
扩散Transformer(Diffusion Transformer):负责将文本特征逐步去噪,最终生成梅尔频谱图(Mel-spectrogram)。MegaTTS3 使用了 x-transformers 库实现的 Transformer 结构,配合 torchdiffeq 进行常微分方程求解,实现高质量的声学建模。
WavVAE 声码器:将梅尔频谱图转换为原始波形。值得注意的是,由于字节跳动的安全限制,WavVAE 编码器本身并未公开,用户只能使用官方预先提取的 .npy 潜在变量文件进行推理。这意味着声音克隆依赖于官方提供的特征文件,而不是直接上传音频进行实时提取。
时长预测模型(Duration LM):预测每个音素的持续时间,控制语音的语速和节奏。
G2P(Grapheme-to-Phoneme)模块:将文本转换为音素序列,支持中文拼音和英文音素的混合输入——这使得中英混读(如"Hello你好")成为可能。
ComfyUI-MegaTTS 提供两个核心节点:
MegaTTS3 节点:适合标准 TTS 任务。你只需输入文本、选择语言(中文或英文)、调整生成质量(generation_quality,数值越高音质越好)、发音强度(pronunciation_strength)和声音相似度(voice_similarity),再指定一个参考声音,即可生成自然流畅的语音。
MegaTTS3S 节点:专为声音克隆设计,只需提供参考音频路径,系统会根据预先提取的 .npy 特征克隆声音音色。
关键参数详解:
generation_quality:默认 32,范围 1-N,数值越高生成质量越好,但推理时间也越长。pronunciation_strength(发音强度):默认 1.4,控制发音与原文的吻合程度,偏低会让 AI 更"自由发挥",偏高则严格按文本读。voice_similarity(声音相似度):默认 3.0,数值越高克隆声音越接近参考音色。这是唯一一个必须直面的现实问题:ComfyTTS3 需要 CUDA GPU,最低 4GB 显存,推荐 8GB 以上。纯 CPU 环境无法运行。
安装流程本身很简洁:
custom_nodes 目录pip install -r requirements.txt 安装依赖不过由于 WavVAE 编码器不可用,声音克隆必须依赖预先提取的 .npy 特征文件——如果你想克隆一个全新的声音,需要自行从官方渠道获取特征包,目前官方支持通过提交语音样本申请。
WavVAE 的缺失是整个项目最大的局限。它不仅限制了自定义声音的实时提取,还意味着整个声音克隆流程必须依赖字节跳动的服务器端预处理——这与"完全本地化"的愿景尚有距离。
此外,GPL-3.0 许可要求衍生作品也必须开源,如果你计划将本项目代码集成到商业产品中,需要仔细评估许可合规风险。
ComfyUI-MegaTTS 的出现,本质上是将顶级研究模型带入可视化工作流生态。随着 ComfyUI 在 AI 图像生成领域的普及,将其扩展到音频合成领域是顺理成章的事情。对内容创作者而言,这意味着从文字到语音的完整 AI 创作流水线,第一次可以在一个界面内完成。