
Spark-TTS
Spark-TTS简介
Spark-TTS是什么?
Spark-TTS是SparkAudio团队开发的文本转语音(TTS)系统,基于 Qwen2.5 构建, 直接从文本控制音调、速度和说话者风格,支持零样本语音克隆、多语言合成、细粒度语音控制以及通过 Web UI 进行语音生成,能够快速将文本转换为自然、高质量的语音内容。和传统TTS系统不同,它直接从LLM预测的编码中重建音频,简化了语音生成流程,提高了效率。
Spark-TTS核心功能
零样本语音克隆:Spark-TTS支持零样本语音克隆,即便没有特定说话者的训练数据,也能复制说话者的声音。在跨语言和代码转换场景中,它能出色地在不同语言和说话者之间无缝切换。
多语言支持:该系统支持中文和英文,在跨语言合成时能保持高度的自然度和准确性。用户用一种语言输入文本,就能得到另一种语言的语音输出。
细粒度语音控制:用户能通过调整性别、音高、语速等参数,定制虚拟说话者的声音,满足虚拟主播、有声读物等场景对多样化语音内容的需求。
高效语音合成:Spark-TTS完全基于Qwen2.5架构,无需额外的生成模型,直接从LLM预测的编码中重建音频,简化了流程,降低了复杂性。
虚拟说话者创建:用户可以创建属于自己的虚拟说话者,通过调整参数赋予其独特的语音风格。
Spark-TTS技术架构
Spark-TTS的技术基础是BiCodec单流语音编解码器,它把语音分解成低比特率语义标记(负责语言内容)和固定长度全局标记(负责说话者属性)。这种分离方式便于灵活调整语音特性,再结合Qwen2.5的思维链(Chain-of-Thought)技术,进一步提升了语音生成的质量和可控性。
Spark-TTS应用场景
有声读物制作:其自然的语音质量特别适合用于有声读物。
虚拟主播:通过调整语音参数,生成符合特定需求的虚拟说话者。
跨语言语音合成:支持多种语言,扩展了其在全球范围内的适用性。
Spark-TTS安装与使用
1. 环境准备
安装 Python:确保已安装 Python 3.12。
安装 Conda:用于管理虚拟环境,可通过 Miniconda 官网 下载安装。
2. 克隆仓库
git clone https://github.com/SparkAudio/Spark-TTS.git cd Spark-TTS
3. 安装依赖
conda create -n sparktts -y python=3.12 conda activate sparktts pip install -r requirements.txt
如果在中国大陆,可以使用阿里云镜像:
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com
4. 下载预训练模型
通过以下命令下载预训练模型:
from huggingface_hub import snapshot_download snapshot_download("SparkAudio/Spark-TTS-0.5B", local_dir="pretrained_models/Spark-TTS-0.5B")
5.基本使用
运行以下命令进行语音合成:
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"
6. Web UI 使用
python webui.py --device 0
GitHub仓库:https://github.com/SparkAudio/Spark-TTS
HuggingFace模型库:https://huggingface.co/spaces/Mobvoi/Offical-Spark-TTS
论文:https://arxiv.org/pdf/2503.01710
演示:https://sparkaudio.github.io/spark-tts/
相关资讯:
Llasa:一款基于Llama的文本转语音(TTS),生成效果自然流畅富有感情
Octave:Hume AI发布的一款TTS模型,可上下文感知与情感适应