🚀AI拟声: 5秒内克隆您的声音并生成任意语音内容 Clone a voice in 5 seconds to generate arbitrary speech in real-time
Go to file
2021-08-16 22:18:46 +08:00
archived_untest_files hide untest to avoid confusion when using this repro 2021-08-11 23:37:06 +08:00
encoder Built-in pretrained encoder/vocoder model 简化配置流程,预集成模型 2021-08-16 22:18:46 +08:00
samples Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
synthesizer Supporting new dataset SLR68 ! try python synthesizer_preprocess_audio.py ...\slr --dataset SLR68 2021-08-13 00:46:21 +08:00
toolbox Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
utils Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
vocoder Built-in pretrained encoder/vocoder model 简化配置流程,预集成模型 2021-08-16 22:18:46 +08:00
.gitattributes Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
.gitignore Built-in pretrained encoder/vocoder model 简化配置流程,预集成模型 2021-08-16 22:18:46 +08:00
demo_toolbox.py Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
LICENSE.txt Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
README-CN.md Built-in pretrained encoder/vocoder model 简化配置流程,预集成模型 2021-08-16 22:18:46 +08:00
README.md Built-in pretrained encoder/vocoder model 简化配置流程,预集成模型 2021-08-16 22:18:46 +08:00
requirements.txt Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
synthesizer_preprocess_audio.py Refactor preprocessor of synthesizer to prepare to supprot more datasets 2021-08-11 23:33:43 +08:00
synthesizer_preprocess_embeds.py Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00
synthesizer_train.py Init to support Chinese Dataset. 2021-08-07 11:56:00 +08:00

WechatIMG2968

MIT License

This repository is forked from Real-Time-Voice-Cloning which only support English.

English | 中文

Features

🌍 Chinese supported mandarin and tested with multiple datasets: aidatatang_200zh, SLR68

🤩 PyTorch worked for pytorch, tested in version of 1.9.0(latest in August 2021), with GPU Tesla T4 and GTX 2060

🌍 Windows + Linux tested in both Windows OS and linux OS after fixing nits

🤩 Easy & Awesome effect with only newly-trained synthesizer, by reusing the pretrained encoder/vocoder

DEMO VIDEO

Quick Start

1. Install Requirements

Follow the original repo to test if you got all environment ready. **Python 3.7 or higher ** is needed to run the toolbox.

  • Install PyTorch.
  • Install ffmpeg.
  • Run pip install -r requirements.txt to install the remaining necessary packages.

Note that we are using the pretrained encoder/vocoder but synthesizer, since the original model is incompatible with the Chinese sympols. It means the demo_cli is not working at this moment.

2. Train synthesizer with your dataset

  • Download aidatatang_200zh or SLR68 dataset and unzip: make sure you can access all .wav in train folder

  • Preprocess with the audios and the mel spectrograms: python synthesizer_preprocess_audio.py <datasets_root> Allow parameter --dataset {dataset} to support adatatang_200zh, SLR68

  • Preprocess the embeddings: python synthesizer_preprocess_embeds.py <datasets_root>/SV2TTS/synthesizer

  • Train the synthesizer: python synthesizer_train.py mandarin <datasets_root>/SV2TTS/synthesizer

  • Go to next step when you see attention line show and loss meet your need in training folder synthesizer/saved_models/.

FYI, my attention came after 18k steps and loss became lower than 0.4 after 50k steps. attention_step_20500_sample_1 step-135500-mel-spectrogram_sample_1 A link to my early trained model: Baidu Yun Codeaid4

3. Launch the Toolbox

You can then try the toolbox:

python demo_toolbox.py -d <datasets_root>
or
python demo_toolbox.py

TODO

  • Add demo video
  • Add support for more dataset
  • Upload pretrained model
  • Support parallel tacotron
  • Service orianted and docterize
  • 🙏 Welcome to add more