ComfyUI_StepAudioTTS
在ComfyUI中实现文本转语音,支持说话、唱歌、Rap和声音克隆四种模式
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
在ComfyUI中实现文本转语音,支持说话、唱歌、Rap和声音克隆四种模式
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
图1:ComfyUI 中的 Step-Audio-TTS 工作流界面

想象一下这样的场景:你是一家短视频公司的内容策划,最近需要为旗下账号大量制作配音内容。传统方案要么去找配音演员,一句话成本几十元;要么用机械感十足的传统 TTS,声音听起来像ATM机报数。但现在,有了 Step-Audio-TTS,你可以让AI用自己的声音、或任意指定的音色,生成自然流畅的语音——包括说话、唱歌、Rap,甚至克隆一个从未出现过的全新声音。这一切,只需要你在 ComfyUI 里拖入几个节点。
这就是 ComfyUI_StepAudioTTS 带来的变革:一个运行在 ComfyUI 环境下的文本转语音节点,基于 MiniMax 开源的 Step-Audio-TTS 模型。用户无需离开熟悉的 ComfyUI 界面,就可以直接利用最新的多模态语音合成能力完成各种音频创作任务。
2024-2025年,MiniMax 发布了 Step 系列模型,其中的 Step-Audio-TTS 以其强大的情感表达能力和多风格生成能力引发关注。与同期许多 TTS 系统只能生成标准普通话不同,Step-Audio-TTS 支持说话、唱歌、Rap、声音克隆四种核心模式,这在当时的开源 TTS 领域是相当领先的能力。
GitHub 用户 billwuhao(中文社区知名的 ComfyUI 插件开发者)敏锐地捕捉到了这个趋势,将 Step-Audio-TTS 封装为 ComfyUI 的原生节点。项目发布后在中文 AI 社区广泛传播,用于有声书配音、AI 歌手创作、虚拟主播语音生成等场景。该仓库目前获得 Apache-2.0 开源许可,模型权重可免费商用。
从代码层面理解,StepAudioTTS 的工作流程分为三个核心阶段。
第一阶段:语音识别(FunASR)
当用户输入文本时,系统先通过 FunASR(阿里开源的语音识别模型)对用户录制的参考音频进行语音识别,得到参考音频对应的文本内容。这个过程用于确认参考音频的语义内容,为后续的风格学习提供文本-音频对齐信息。
funasr_model = AutoModel(
model="dengcunqin/speech_paraformer-large_asr_nat-zh-cantonese-en-16k-vocab8501-online",
model_revision="master", device=device
)
第二阶段:音频向量化(ONNX Tokenizer)
参考音频经过 Step-Audio-Tokenizer(基于 ONNX 加速的语音分词器)转换为离散的音频 token 序列。这些 token 捕获了原始音频的音色、语速、语调等声学特征,是后续 LLM 生成的基础。
ort_cosy_tokenizer = onnxruntime.InferenceSession(
cosy_tokenizer_path, sess_options=session_option, providers=providers
)
第三阶段:LLM 生成(Step-Audio-TTS-3B)
一个 3B 参数的因果语言模型接收文本 token 和参考音频 token,生成目标音频的 token 序列。最后通过声码器(vocoder)将 token 还原为波形。模型以 bfloat16 精度加载,支持 CUDA 加速。
llm = AutoModelForCausalLM.from_pretrained(
tts_model_path,
torch_dtype=torch.bfloat16,
device_map=device,
trust_remote_code=True,
)
最基础的使用场景。用户输入文本,选择一个预设的说话者(Speaker),即可生成该音色的自然语音。说话者定义文件存储在 Step-Audio-speakers/speakers_info.json 中,用户可以自由添加自定义说话者,格式简单直观。
当文本中包含乐谱标记时(如 [SING] 前缀),模型进入唱歌模式,生成具有旋律感的歌声。这一功能被大量用于 AI 歌手创作、社区翻唱等场景。
通过 [RAP] 前缀触发,生成的语音具有明显的节奏感和韵律特征,适合嘻哈风格内容创作。
用户录制一段 10-30 秒的参考音频(可使用项目自带的 MWAudioRecorder 麦克风录音节点录制),系统提取该音频的音色特征,生成与参考音色高度相似的新语音内容。这是目前社区反馈最强烈的功能之一。
项目还附带了一个独立的音频录制节点,可以在 ComfyUI 界面内直接通过麦克风录制参考音频,无需切换到其他软件。该节点内置了噪声抑制(基于 noisereduce 库)和 VAD(语音活动检测),录制质量优于系统自带录音功能。
图2:MWAudioRecorder 录音节点界面

该项目作为 ComfyUI 的自定义节点(custom_nodes)安装,部署过程分为两步:
第一步:安装节点
将仓库克隆到 ComfyUI 的 custom_nodes 目录,然后安装依赖:
cd ComfyUI/custom_nodes
git clone https://github.com/billwuhao/ComfyUI_StepAudioTTS.git
cd ComfyUI_StepAudioTTS
pip install -r requirements.txt
第二步:下载模型
需要下载三个模型文件,总体积约 10GB:
Step-Audio-TTS-3B:核心生成模型Step-Audio-Tokenizer:音频分词器Step-Audio-speakers:说话者音色库# 将 Step-Audio-speakers 文件夹移动到 ComfyUI/models/TTS/
# 目录结构如下:
# ComfyUI/models/TTS/
# ├── Step-Audio-TTS-3B/
# ├── Step-Audio-Tokenizer/
# └── Step-Audio-speakers/
硬件需求方面,Step-Audio-TTS-3B 模型参数量为 3B(30亿参数),即使经过 bfloat16 量化,也需要约 8GB 以上显存,推荐使用 RTX 3090 或 RTX 4090 等高端 GPU。此外还需要至少 16GB 系统内存和 10GB 以上磁盘空间存储模型文件。
尽管功能强大,但该项目在实际使用中仍存在一些局限。
首先是部署门槛较高。没有 Docker 支持,用户需要手动处理 Python 依赖(transformers、onnxruntime-gpu、funasr 等),在不同 CUDA 版本之间极易遇到版本冲突问题。一键部署方案目前还不存在,新手容易在这一步卡住数小时。
其次是推理速度。3B 参数的 LLM 即使在 RTX 4090 上,生成一段 30 秒音频也通常需要 1-3 分钟。长文本需要分 chunk 处理,且 max_length 参数需要根据文本长度手动调节——用户反馈这是一个"需要反复试错"的过程。
第三是中文以外语言的支持。虽然代码支持多语言,但实测下来,中文普通话的效果最为稳定,粤语和其他方言的韵律表现参差不齐,英语及其他语言的唱歌效果尚有提升空间。
ComfyUI_StepAudioTTS 的出现,反映了 AI 音频生成领域的一个核心趋势:从"通用语音合成"向"个性化声音创作"的转变。
2023-2024 年,以 ElevenLabs 为代表的商业 TTS 已经引领了这一波浪潮,而 Step-Audio-TTS 在开源领域复制了类似的能力。随着 ComfyUI 这样的可视化工作流平台不断整合这类节点,"人人皆可做播客、人人皆可做歌手"的愿景正在变得越来越触手可及。
从技术演进方向看,未来这类 TTS 节点可能会与视频生成模型(如 CogVideoX)、角色动画模型深度结合,形成从文本到带音视频内容的完整创作链条。对于内容创作者而言,这意味着创作效率的数量级提升;对于开源社区而言,这验证了"大模型 + 可视化工作流"这一组合模式的巨大潜力。
总体而言,ComfyUI_StepAudioTTS 是一款功能丰富、技术扎实的中文 AI 音频生成工具,特别适合有 ComfyUI 使用经验的内容创作者和 AI 爱好者。部署虽然有一定门槛,但一旦配置完成,其产出质量在开源 TTS 领域处于领先水平。