想要快速体验强大的EmotiVoice文本转语音引擎吗?这篇完整教程将带你从零开始,一步步完成EmotiVoice的安装配置,避免常见错误,轻松启动Web界面体验多音色情感合成功能!🎉
🚀 快速环境准备
EmotiVoice是一款支持中英文双语的免费TTS引擎,拥有2000+音色和情感合成功能。首先确保你的设备有GPU并已安装CUDA。
必备条件检查
- 操作系统:Linux(本教程以Linux环境为主)
- Python版本:3.8
- GPU:支持CUDA的NVIDIA显卡
创建Python环境
conda create -n EmotiVoice python=3.8
conda init
conda activate EmotiVoice
💡 小贴士:如果你不想使用conda环境,也可以直接使用系统Python,但要确保版本为3.8
📦 系统依赖安装
根据你的Linux发行版选择相应的命令:
Ubuntu系统:
sudo apt update
sudo apt install git
sudo apt-get install git-lfs
CentOS系统:
sudo yum update
sudo yum install git
sudo yum install git-lfs
🔧 项目部署步骤
1. 克隆项目仓库
git lfs install
git clone https://gitcode.com/gh_mirrors/em/EmotiVoice
2. 安装Python依赖
pip install torch torchaudio
pip install numpy numba scipy transformers==4.26.1 soundfile yacs g2p_en jieba pypinyin pypinyin_dict
3. 下载预训练模型
进入项目目录后执行:
cd EmotiVoice
git lfs clone https://huggingface.co/WangZeJun/simbert-base-chinese WangZeJun/simbert-base-chinese
或者使用备用下载方式:
git clone https://www.modelscope.cn/syq163/WangZeJun.git
4. 下载CKPT模型文件
git clone https://www.modelscope.cn/syq163/outputs.git
完成上述步骤后,你的项目结构应该包含:
├── WangZeJun
│ └── simbert-base-chinese
│ ├── config.json
│ ├── pytorch_model.bin
│ └── vocab.txt
├── outputs
│ ├── prompt_tts_open_source_joint
│ │ └── ckpt
│ │ ├── do_00140000
│ │ └── g_00140000
└── style_encoder
└── ckpt
└── checkpoint_163431
🌐 启动Web界面
安装Streamlit
pip install streamlit
启动服务
streamlit run demo_page.py --server.port 6006 --logger.level debug
启动成功后,在浏览器中打开显示的服务器地址,就能看到EmotiVoice的交互界面了!✨
🔌 启动API服务
如果你需要API接口,可以安装并启动TTS API:
pip install fastapi pydub uvicorn[standard] pyrubberband
uvicorn apiservice:app --reload --port 6006
接口文档地址:你的服务地址 + /docs
🛠️ 常见问题解决方案
❌ 问题1:页面显示"Please wait..."或空白
原因:CORS(跨域资源共享)保护配置错误
解决方法:
streamlit run demo_page.py --server.port 6006 --logger.level debug --server.enableCORS=false
❌ 问题2:BadZipFile错误
原因:缺少NLTK数据包文件
解决方法: 创建 download.py 文件:
import nltk
print(nltk.data.path)
nltk.download('averaged_perceptron_tagger')
nltk.download('cmudict')
然后运行:
python download.py
❌ 问题3:AttributeError: 'NoneType' object has no attribute 'seek'
原因:模型文件未找到或路径不正确
解决方法:检查 outputs 文件夹是否存在,路径结构是否正确。
❌ 问题4:ImportError: cannot import name 'Doc'
原因:typing_extensions版本问题
解决方法:
pip install typing_extensions==4.8.0 --force-reinstall
❌ 问题5:500 Internal Server Error
原因:未安装ffmpeg
解决方法:
Ubuntu:
sudo apt update
sudo apt install ffmpeg
CentOS:
sudo yum install epel-release
sudo yum install ffmpeg
验证安装:
ffmpeg -version
💡 使用小技巧
- 多语言支持:EmotiVoice同时支持中文和英文文本转语音
- 情感控制:可以通过提示词控制语音的情感色彩
- 批量处理:使用脚本接口可以批量生成语音结果
🎯 总结
通过这篇EmotiVoice安装教程,你已经成功完成了从环境配置到Web界面启动的全流程。EmotiVoice作为一款功能强大的TTS引擎,为你的项目提供了丰富的声音选择和情感控制功能。
现在就开始体验EmotiVoice带来的语音合成魅力吧!🎊
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



