综合介绍
ChatTTS 是一个专为对话场景设计的生成语音模型。它能够生成自然且富有表现力的语音,支持多种语言和多位说话者,适用于互动对话。该模型通过预测和控制细粒度的韵律特征,如笑声、停顿和插话,超越了大多数开源的语音合成模型。ChatTTS 提供预训练模型,支持进一步的研究和开发,主要用于学术目的。
功能列表
- 多语言支持:支持中文和英文,未来将扩展更多语言。
- 多说话者支持:能够生成多位说话者的语音,适用于互动对话。
- 细粒度韵律控制:可以预测和控制笑声、停顿和插话等韵律特征。
- 预训练模型:提供40,000小时的预训练模型,支持进一步研究和开发。
- 开源代码:代码在GitHub上开源,供学术和研究使用。
使用帮助
安装流程
- 克隆项目代码:
git clone https://github.com/2noise/ChatTTS.git
- 安装依赖:
cd ChatTTS pip install -r requirements.txt
- 下载预训练模型: 从HuggingFace或ModelScope下载预训练模型,并将其放置在指定目录。
使用方法
- 加载模型:
from chattts import ChatTTS model = ChatTTS.load_model('path/to/pretrained/model')
- 生成语音:
text = "你好,欢迎使用ChatTTS!" audio = model.synthesize(text)
- 保存音频文件:
with open('output.wav', 'wb') as f: f.write(audio)
详细功能操作
- 文本输入:支持中文和英文混杂的文本输入。
- 韵律控制:通过设置参数控制笑声、停顿和插话等韵律特征。
- 音色控制:可以通过预设的音色种子值或音色码控制生成的音色。
- 情感控制:通过设置情感波动性和相关性参数,控制生成语音的情感特征。
- 流式输出:支持长音频生成和分角色阅读,适用于复杂对话场景。
示例代码
from chattts import ChatTTS
# 加载模型
model = ChatTTS.load_model('path/to/pretrained/model')
# 设置文本和韵律参数
text = "你好,欢迎使用ChatTTS!"
params = {
'laugh': True,
'pause': True,
'interjection': True
}
# 生成语音
audio = model.synthesize(text, params)
# 保存音频文件
with open('output.wav', 'wb') as f:
f.write(audio)
ChatTTS 客户端
快速体验
网址 | 类型 |
---|---|
Original Web | 原版网页版体验 |
Forge Web | Forge 增强版体验 |
Linux | Python 安装包 |
Samples | 音色种子示例 |
Cloning | 音色克隆体验 |
功能增强
项目 | 亮点 |
---|---|
jianchang512/ChatTTS-ui | 提供 API 接口,可在第三方应用中调用 |
6drf21e/ChatTTS_colab | 提供流式输出,支持长音频生成和分角色阅读 |
lenML/ChatTTS-Forge | 提供人声增强和背景降噪,可使用附加提示词 |
CCmahua/ChatTTS-Enhanced | 支持文件批量处理,以及导出 SRT 文件 |
HKoon/ChatTTS-OpenVoice | 配合 OpenVoice 进行声音克隆 |
功能扩展
项目 | 亮点 |
---|---|
6drf21e/ChatTTS_Speaker | 音色角色打标与稳定性评估 |
AIFSH/ComfyUI-ChatTTS | ComfyUi 版本,可作为工作流节点引入 |
MaterialShadow/ChatTTS-manager | 提供了音色管理系统和 WebUI 界面 |