作者:CyberDickLang
版本号:1.0.2
本插件为 ComfyUI 提供长文本处理与音频合成相关的多功能节点,支持文本分割、音频拼接、音频合并、字幕时间戳对齐、音频分离、说话人分离等多种场景。
- 功能:支持按句子、段落或自定义分隔符切分文本,支持字符过滤。
- 输出:分割后的文本列表及其长度。
- 典型用途:TTS前的文本预处理。
- 功能:加载字幕文件,自动识别并提取文本内容,支持多种主流字幕格式(txt、srt、ass、ssa、vtt、lrc、sub等)。
- 输出:字幕文本内容、原始文件路径。
- 用法:可直接拖拽字幕文件到输入框。
- 功能:将两个AUDIO类型音频顺序加入队列,自动跳过空输入。
- 输出:音频队列(LIST)
- 功能:将音频队列合并为一段音频,支持按字幕文件时间戳对齐(支持srt、ass、ssa、vtt、lrc、sub等格式),自动插入静音。
- 参数:
audio_batch:AUDIO类型音频队列gap_duration:片段间隔(秒)use_timestamps:是否根据字幕时间戳对齐srt_file:字幕文件路径(支持多格式)
- 输出:合并后的AUDIO
- 用法示例:
- 用 Subtitle File Loader 加载字幕文件,获取路径
- 用 Make Audio Batch 生成音频队列
- 用 Combine Audio From List/Batch 合成,勾选 use_timestamps 并输入字幕路径
- 功能:将两个AUDIO类型音频按指定方向拼接,支持插入静音间隔。
- 参数:
audio1、audio2:AUDIO类型音频direction:拼接方向(right/left)gap_duration:间隔时间(秒)
- 功能:将音频分离为四个音轨:低音、鼓点、其他、人声。基于Hybrid Demucs模型。
- 参数:
audio:输入音频chunk_fade_shape:音频分块重叠区域的淡入淡出效果(linear/half_sine/logarithmic/exponential)chunk_length:每个音频块的长度(秒,1.0-30.0)chunk_overlap:音频块之间的重叠时间(秒,0.0-1.0)
- 输出:四个分离的音轨(bass、drums、other、vocals)
- 典型用途:音乐制作、音频处理、人声提取等。
- 功能:按索引提取列表元素。
- 功能:输出列表长度。
- 功能:将多说话人音频分离为最多4个人物的独立音轨(如双人对话分别输出两个人的音频)。
- 参数:
audio:输入音频(建议16kHz单声道)max_speakers:最大说话人数(1~4)language:音频语言代码,如'zh'、'en'、'ja'等,'auto'为自动检测compute_type:计算精度,float16更快但精度稍低
- 输出:audio1、audio2、audio3、audio4(不足人数补静音)
- 注意:WhisperX功能暂时禁用,当前使用pyannote.audio进行说话人分离。
- 将本项目克隆到 ComfyUI 的
custom_nodes目录下:git clone <本项目地址> ComfyUI/custom_nodes/ComfyUI-AudioSuiteAdvanced
- 安装依赖:
pip install -r requirements.txt
- WhisperX功能暂时禁用:由于依赖问题,暂时移除WhisperX功能
- 使用pyannote.audio:当前使用pyannote.audio进行说话人分离
- 需要配置:需要HuggingFace auth token用于pyannote.audio
- 多语言支持:支持中文、英文、日文等多种语言
- 自动检测:可自动检测音频语言,也可手动指定
- 高兼容性:支持 Python 3.7+,无需降级 Python 版本
- 建议使用 16kHz 单声道音频以获得最佳效果
- 对于较长的音频,处理时间可能较长,请耐心等待
- 需要配置HuggingFace auth token
- 支持主流音频格式(wav、mp3、ogg、flac、m4a等)
- 支持主流字幕格式(txt、srt、ass、ssa、vtt、lrc、sub等)
- 所有AUDIO类型节点需保证采样率一致
- 节点参数均有详细说明,支持中英文双语(自动跟随系统)
- Audio Separation节点需要torchaudio>=2.3.0和librosa>=0.10.0
- Speaker Separation节点基于WhisperX,兼容性更好
- 当前版本:1.0.1
- 2024-06-09:支持多格式字幕时间戳对齐音频合成,Subtitle File Loader支持多格式字幕解析。
- 2024-12-19:新增Audio Separation节点,支持音频分离为四个音轨。
- 2024-12-20:新增Speaker Separation节点,支持多说话人音频分离,支持本地模型优先。
- 2025-01-10:升级Speaker Separation节点,使用WhisperX替代pyannote.audio,提升兼容性和易用性。
- 🔧 修复:解决了ComfyUI中出现两个AudioSuiteAdvanced分类目录的问题
- ✨ 新增:为Character Vocal Extractor节点添加了
offset_seconds和duration_seconds参数 - 🎯 优化:实现当
duration_seconds为0时不截取音频的逻辑,完全兼容UTK的Audio Crop Process标准 - 📦 重构:统一了所有节点的分类名为
AudioSuiteAdvanced
- 初始版本发布
- 支持长文本分割、音频拼接、音频分离等基础功能
- 部分音频节点参考自 ComfyUI-KJNodes
- Audio Separation节点基于 audio-separation-nodes-comfyui
- Speaker Separation节点基于 WhisperX
- B站/小红书/RunningHub/赛博迪克朗
- YouTube/OpenArt/cyberdicklang
- 邮箱:[email protected]
如有问题欢迎在评论区或issue区留言反馈!