EmotiVoice 是一款功能强大的现代开源文本转语音引擎。EmotiVoice 提供中英文两种语言,超过 2000 种不同的声音。最突出的功能是情感合成,允许您创建具有多种情感的语音,包括快乐、兴奋、悲伤、愤怒等。
提供易于使用的网络界面。还有一个用于批量生成结果的脚本接口。
快速开始
EmotiVoice Docker 镜像
尝试 EmotiVoice 最简单的方法是运行 docker 镜像。您需要一台配备 NVidia GPU 的机器。如果您尚未这样做,请按照 Linux 或 Windows WSL2 的说明设置 NVidia 容器工具包。然后可以运行 EmotiVoice,
docker run -dp 127.0.0.1:8501:8501 syq163/emoti-voice:latest
现在打开浏览器并导航至 http://localhost:8501 即可开始使用 EmotiVoice 强大的 TTS 功能。
完整安装
conda create -n EmotiVoice python=3.8 -y
conda activate EmotiVoice
pip install torch torchaudio
pip install numpy numba scipy transformers==4.26.1 soundfile yacs g2p_en jieba pypinyin
准备模型文件
git lfs install
git lfs clone https://huggingface.co/WangZeJun/simbert-base-chinese WangZeJun/simbert-base-chinese
或者,您可以运行:
mkdir -p WangZeJun/simbert-base-chinese
wget https://huggingface.co/WangZeJun/simbert-base-chinese/resolve/main/config.json -P WangZeJun/simbert-base-chinese
wget https://huggingface.co/WangZeJun/simbert-base-chinese/resolve/main/pytorch_model.bin -P WangZeJun/simbert-base-chinese
wget https://huggingface.co/WangZeJun/simbert-base-chinese/resolve/main/vocab.txt -P WangZeJun/simbert-base-chinese
推理
- 您必须下载预训练的模型,然后运行:
mkdir -p outputs/style_encoder/ckpt
mkdir -p outputs/prompt_tts_open_source_joint/ckpt
- 并将 g_* 、 do_* 放在 outputs/prompt_tts_open_source_joint/ckpt 下,并将 checkpoint_* 放在 outputs/style_encoder/ckpt 中。
- 推理文本格式为 <speaker>|<style_prompt/emotion_prompt/content>|<phoneme>|<content> 。
- 推理文本示例:Maria_Kasper|Happy|<sos/eos> [IH0] [M] [AA1] [T] engsp4 [V] [OY1] [S] engsp4 [AH0] engsp1 [M] [AH1] [L] [T] [IY0] engsp4 [V] [OY1] [S] engsp1 [AE1] [N] [D] engsp1 [P] [R] [AA1] [M] [P] [T] engsp4 [K] [AH0] [N] [T] [R] [OW1] [L] [D] engsp1 [T] [IY1] engsp4 [T] [IY1] engsp4 [EH1] [S] engsp1 [EH1] [N] [JH] [AH0] [N] . <sos/eos>|Emoti-Voice – a Multi-Voice and Prompt-Controlled T-T-S Engine 。
-
您可以通过 python frontend_en.py data/my_text.txt > data/my_text_for_tts.txt 获取音素。
-
然后运行:
TEXT=data/inference/text
python inference_am_vocoder_joint.py \
--logdir prompt_tts_open_source_joint \
--config_folder config/joint \
--checkpoint g_00140000 \
--test_file $TEXT
合成语音位于 outputs/prompt_tts_open_source_joint/test_audio 下。
- 或者,如果您只想使用交互式 TTS 演示页面,请运行:
pip install streamlit
streamlit run demo_page.py
https://github.com/netease-youdao/EmotiVoice项目链接
© 版权声明
文章版权归作者所有,未经允许请勿转载。