Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I trained a German model - which files do I need to share? #571

Closed
padmalcom opened this issue Oct 24, 2020 · 5 comments
Closed

I trained a German model - which files do I need to share? #571

padmalcom opened this issue Oct 24, 2020 · 5 comments

Comments

@padmalcom
Copy link

Hi I trained encoder, synthesizer and vocoder on German female voices from m-ailabs and even if results are not too good, I'd like to share it. Encoder and vocoder folders aren't too big, but the synthesizer folder is ~10gb. Does anybody know if I can leave some files out or do I have to share the entire 10 gb folder?

@ghost
Copy link

ghost commented Oct 24, 2020

Hi @padmalcom , congratulations on completing full stack training and thank you for sharing your German models with the community! For the pretrained models, this is the minimum set of files we distribute. If this is not enough guidance on which files should be selected, please ask.

encoder\saved_models\pretrained.pt
synthesizer\saved_models\logs-pretrained\taco_pretrained\checkpoint
synthesizer\saved_models\logs-pretrained\taco_pretrained\tacotron_model.ckpt-278000.data-00000-of-00001
synthesizer\saved_models\logs-pretrained\taco_pretrained\tacotron_model.ckpt-278000.index
synthesizer\saved_models\logs-pretrained\taco_pretrained\tacotron_model.ckpt-278000.meta
vocoder\saved_models\pretrained\pretrained.pt

If you modified any of the following files, please also include them:

encoder\params_model.py
encoder\params_data.py
synthesizer\hparams.py
synthesizer\utils\cleaners.py
synthesizer\utils\symbols.py
synthesizer\utils\text.py
vocoder\hparams.py

@padmalcom
Copy link
Author

padmalcom commented Oct 24, 2020

Thanks, filesize is now 372mb which is fantastic. Here are the most important points I learned during training. Will upload the archive soon.

First things first

  • Trained on female German voices of m-ailabs
  • Tests show that the vocoder training is not neccessary, so focus on encoder and synthesizer
  • I had to edit some parts of the implementation to make it work with m-ailabs
  • m-ailabs requires a lot of cleaning (at least for German voices). I added a script to do most of the work.
    • mailab_normalize_text.py: Creates text files besides each wav file of the m-ailabs dataset which apparently is required.

How to run?

Please note that all changes I did were made for windows. You might want to adapt it for linux.

Download

If you just want to apply the model, download the bin.zip from the following release and unzip it to your repository.
https://github.com/padmalcom/Real-Time-Voice-Cloning-German/releases/tag/0.1

Training

To train the model replace all code files in the repositlry by the code files from my release. You can leave out the bin.zip file from the release.

Encoder

  • python encoder_preprocess.py E:\Datasets\
  • python encoder_train.py my_run E:\Datasets\SV2TTS\encoder

Synthesizer

  • Make sure you updated synthesizer/utils/symbols.py for your language
  • python synthesizer_preprocess_audio.py E:\Datasets\ --subfolders de_DE\by_book\female\ --dataset "" --no_alignments --wav_dir
  • python synthesizer_preprocess_embeds.py E:\Datasets\SV2TTS\synthesizer
  • python synthesizer_train.py my_run E:\Datasets\SV2TTS\synthesizer

Vocoder (You really do not need to train the vocoder, it works well as the pretrained model is - at least for German)

  • pip install librosa==0.7.2
  • python vocoder_preprocess.py E:\Datasets\ --model_dir=synthesizer/saved_models/logs-my_run/
  • python vocoder_train.py my_run E:\Datasets\

Toolbox

  • pip install matplotlib==3.2.2 #required for toolbox to work

Todos and Learnings

  • Getting the Toolbox to run with a specific voice of the four voices does not seem to work properly. I still have to figure out why (not).
  • Next experiment will be to merge all voices into one voice package and see if the result improves.

@padmalcom
Copy link
Author

Model is here: https://github.com/padmalcom/Real-Time-Voice-Cloning-German/releases/tag/0.1
Please read the README.md for help.

@ALIXGUSTAF
Copy link

@padmalcom please can you guide me how is adding Arabic language to [Real-Time-Voice-Cloning] program step by step

@joachimschwarzschild
Copy link

@padmalcom i want to clone a german voice for my instagram reels
can you make an video how to install it on windows?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants