EmotiVoice是一个强大的开源TTS引擎,支持中英文双语,包含2000多种不同的音色,以及特色的情感合成功能,支持合成包含快乐、兴奋、悲伤、愤怒等广泛情感的语音。
EmotiVoice提供一个易于使用的web界面,还有用于批量生成结果的脚本接口。
克隆代码库,
git clone
cd EmotiVoice
创建虚拟环境,
conda create -n EmotiVoice python=3.10 -y
conda activate EmotiVoice
使用 pip 安装 pytorch,
pip install torch torchvision torchaudio --index-url
# conda install -y -c "nvidia/label/cuda-12.1.0" cuda-runtime
验证 cuda 可用,
python -c "import torch;print(torch.cuda.is_available());"
使用 pip 安装依赖,
pip install numpy numba scipy transformers==4.26.1 soundfile yacs g2p_en jieba pypinyin
git lfs install
git clone 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>
.
例如: 8051|非常开心|<sos/eos> uo3 sp1 l ai2 sp0 d ao4 sp1 b ei3 sp0 j ing1 sp3 q ing1 sp0 h ua2 sp0 d a4 sp0 x ve2 <sos/eos>|我来到北京,清华大学
.
其中的 speaker 说明,可以参考这个页面。
其中的音素(phonemes)可以这样得到:python frontend.py data/ > data/my_text_
.
然后运行:
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.
或者你可以直接使用交互的网页界面:
pip install streamlit
streamlit run demo_page.py
完结!
本文发布于:2024-02-03 06:45:37,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170691393749327.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |