网易有道强力开源中英双语语音克隆

项目地址(基于PromptTTS):

https://github.com/netease-youdao/EmotiVoice

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

推理

  1. 下载预训练模型, 然后运行:
复制代码
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

  1. 推理输入文本格式是:

<speaker>|<style_prompt/emotion_prompt/content>|<phoneme>|<content>.

例如: Maria_Kasper|非常开心|<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>|我来到北京,清华大学.

  1. 其中的音素(phonemes)可以这样得到:

python frontend.py data/my_text.txt > data/my_text_for_tts.txt.

  1. 然后运行:
复制代码
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.

  1. 或者你可以直接使用交互的网页界面:
复制代码
pip install streamlit
streamlit run demo_page.py

训练

待推出。

未来工作

  • 当前的实现侧重于通过提示控制情绪/风格。它只使用音高、速度、能量和情感作为风格因素,而不使用性别。但是将其更改为样式、音色控制并不复杂,类似于PromptTTS的原始闭源实现。

致谢

  • PromptTTS. PromptTTS论文是本工作的重要基础。

  • LibriTTS. 训练使用了LibriTTS开放数据集。

  • HiFiTTS. 训练使用了HiFi TTS开放数据集。

  • ESPnet.

  • WeTTS

  • HiFi-GAN

  • Transformers

  • tacotron

  • KAN-TTS

  • StyleTTS

  • Simbert

许可

EmotiVoice是根据Apache-2.0许可证提供的 - 有关详细信息,请参阅许可证文件。

交互的网页是根据用户协议提供的。

相关推荐
郭庆汝1 分钟前
(七)自然语言处理笔记——Ai医生
人工智能·笔记·自然语言处理
生而为虫8 分钟前
28.Python处理图像
人工智能·python·计算机视觉·pillow·pygame
Dev7z8 分钟前
基于OpenCV和MATLAB的椭圆检测系统的设计与实现
人工智能·opencv·matlab
青春不败 177-3266-052011 分钟前
R-Meta分析核心技术:从热点挖掘到高级模型、助力高效科研与论文发表
人工智能·r语言·生态学·meta分析·统计学·环境科学·农业科学
薛定e的猫咪35 分钟前
【论文精读】ICLR 2023 --- 作为离线强化学习强表达能力策略类的扩散策略
人工智能·深度学习·机器学习·stable diffusion
连线Insight43 分钟前
当考公遇上AI,粉笔能吸引用户付费吗?
人工智能
●VON1 小时前
开源 vs 商业:主流AI生态概览——从PyTorch到OpenAI的技术格局之争
人工智能·pytorch·开源
乾元1 小时前
AI 在网络工程中的 12 个高频场景深度实战(Cisco / Huawei 双体系)
人工智能
子午2 小时前
【食物识别系统】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积网络+resnet50算法
人工智能·python·深度学习
Dev7z2 小时前
基于深度学习和图像处理的药丸计数与分类系统研究
图像处理·人工智能·深度学习