Spark-TTS开源项目是一款基于深度学习的端到端中文语音合成系统,由SparkAudio团队开发并维护。该项目提供了高质量的语音合成能力,支持多种中文语音风格,适用于各类语音交互场景。Spark-TTS网盘资源包含了完整的模型文件、训练代码和预训练权重,让开发者能够快速搭建自己的语音合成系统。
一、Spark-TTS项目概述
Spark-TTS是一个开源的端到端中文语音合成系统,采用了最新的深度学习技术,能够生成自然流畅的中文语音。与传统的语音合成系统相比,Spark-TTS具有以下优势:
- 高质量语音输出:生成的语音自然度高,接近真人发音
- 端到端架构:简化了传统语音合成的复杂流程
- 支持多种风格:可以合成不同情感和风格的语音
- 易于部署:提供轻量级模型,适合各种应用场景
简单高效 :
Spark-TTS 完全基于 Qwen2.5 构建,无需使用流匹配等额外生成模型。它无需依赖单独的模型来生成声学特征,而是直接从预测的代码中重建音频。
这种方法简化了流程,提高了效率并降低了复杂性。
高质量语音克隆 :
支持零样本语音克隆,这意味着即使没有该语音的特定训练数据,它也可以复制说话者的声音。
这对于跨语言和代码转换场景来说是理想的,允许语言和声音之间的无缝转换,而无需对每种语言进行单独的训练。
双语支持 :
支持中英文,并具备跨语言、代码切换场景的零样本语音克隆能力,使模型能够高自然度、高准确度地合成多种语言的语音。
可控的语音生成 :
支持通过调整性别、音调、语速等参数创建虚拟说话人。
二、Spark-TTS环境搭建
在开始使用Spark-TTS前,需要先搭建开发环境:
# 克隆项目仓库
git clone https://github.com/SparkAudio/Spark-TTS.git
# 进入项目目录
cd Spark-TTS
# 创建Python虚拟环境
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
Install Conda: please see https://docs.conda.io/en/latest/miniconda.html
安装 Conda:请参阅 https://docs.conda.io/en/latest/miniconda.html
Create Conda env: 创建 Conda 环境:
conda create -n sparktts -y python=3.12
conda activate sparktts
pip install -r requirements.txt
# If you are in mainland China, you can set the mirror as follows:
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com
Model Download 模型下载
Download via python: 通过 python 下载:
from huggingface_hub import snapshot_download
snapshot_download("SparkAudio/Spark-TTS-0.5B", local_dir="pretrained_models/Spark-TTS-0.5B")
Download via git clone: 通过 git clone 下载:
mkdir -p pretrained_models
# Make sure you have git-lfs installed (https://git-lfs.com)
git lfs install
git clone https://huggingface.co/SparkAudio/Spark-TTS-0.5B pretrained_models/Spark-TTS-0.5B
Basic Usage 基本用法
You can simply run the demo with the following commands:
你可以简单地使用以下命令运行该演示:
cd example
bash infer.sh
Alternatively, you can directly execute the following command in the command line to perform inference:
或者也可以直接在命令行中执行以下命令进行推理:
python -m cli.inference \
--text "text to synthesis." \
--device 0 \
--save_dir "path/to/save/audio" \
--model_dir pretrained_models/Spark-TTS-0.5B \
--prompt_text "transcript of the prompt audio" \
--prompt_speech_path "path/to/prompt_audio"
Web UI Usage Web UI 使用
You can start the UI interface by running python webui.py --device 0, which allows you to perform Voice Cloning and Voice Creation. Voice Cloning supports uploading reference audio or directly recording the audio.
您可以通过运行 python webui.py --device 0 启动 UI 界面,从而执行语音克隆和语音创建。语音克隆支持上传参考音频或直接录制音频。
三、Spark-TTS快速入门
安装完成后,可以通过简单的Python代码体验Spark-TTS的语音合成能力:
from spark_tts import SparkTTS
# 初始化TTS引擎
tts = SparkTTS()
# 合成语音
text = "欢迎使用Spark-TTS中文语音合成系统"
audio = tts.synthesize(text)
# 保存语音文件
audio.save("output.wav")
四、Spark-TTS高级功能
1. 语音风格控制
Spark-TTS支持通过参数控制语音风格:
# 设置语音风格参数
params = {
"speed": 1.2, # 语速
"pitch": 0.8, # 音调
"energy": 1.1 # 能量/音量
}
audio = tts.synthesize(text, **params)
2. 批量语音合成
对于需要处理大量文本的场景,可以使用批量合成功能:
texts = ["第一段文本", "第二段文本", "第三段文本"]
audios = tts.batch_synthesize(texts)
3. 自定义模型训练
Spark-TTS支持使用自己的数据集训练模型:
from spark_tts.trainer import TTSTrainer
trainer = TTSTrainer()
trainer.train(
data_dir="path/to/your/dataset",
output_dir="path/to/save/model",
epochs=100,
batch_size=32
)
五、Spark-TTS应用场景
- 智能客服系统:为客服机器人提供自然语音输出
- 有声读物制作:自动化生成高质量的有声内容
- 教育应用:为学习软件提供语音辅助功能
- 物联网设备:为智能家居设备添加语音交互能力
六、常见问题解答
Q:Spark-TTS支持哪些语言?
A:目前主要支持中文,未来计划扩展多语言支持。
Q:合成语音的质量如何?
A:Spark-TTS生成的语音质量接近专业录音水平,MOS评分达到4.0以上。
开源项目地址:https://github.com/SparkAudio/Spark-TTS
评论 (0)