ToraRuka / ParallelWaveGAN-VC

Unofficial Parallel WaveGAN VC with Pytorch

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Parallel WaveGAN VC implementation with Pytorch

This repository provides UNOFFICIAL Unsupervised Cross-Domain Singing Voice Conversion implementations with Pytorch.
Base code for this repository is forked from kan-bayashi/ParallelWaveGAN

The goal of this repository is to provide vocoder-free voice conversion.

What's new

  • 2020/11/11 🎂 Birth-day of this project

Requirements

This repository is tested on Ubuntu 16.04 with a GPU Titan V.

  • Python 3.6+
  • Cuda 10.0+
  • CuDNN 7+
  • NCCL 2+ (for distributed multi-gpu training)
  • libsndfile (you can install via sudo apt install libsndfile-dev in ubuntu)
  • jq (you can install via sudo apt install jq in ubuntu)
  • sox (you can install via sudo apt install sox in ubuntu)

Different cuda version should be working but not explicitly tested.
All of the codes are tested on Pytorch 1.0.1, 1.1, 1.2, 1.3.1, 1.4, 1.5.1, and 1.7.

Pytorch 1.6 works but there are some issues in cpu mode (See #198).

Setup

You can select the installation method from two alternatives.

A. Use pip

$ git clone https://github.com/ToraRuka/ParallelWaveGAN-VC.git
$ cd ParallelWaveGAN-VC
$ pip install -e .
# If you want to use distributed training, please install
# apex manually by following https://github.com/NVIDIA/apex
$ ...

Note that your cuda version must be exactly matched with the version used for the pytorch binary to install apex.
To install pytorch compiled with different cuda version, see tools/Makefile.

B. Make virtualenv

$ git clone https://github.com/kan-bayashi/ParallelWaveGAN.git
$ cd ParallelWaveGAN/tools
$ make
# If you want to use distributed training, please run following
# command to install apex.
$ make apex

Note that we specify cuda version used to compile pytorch wheel.
If you want to use different cuda version, please check tools/Makefile to change the pytorch wheel to be installed.

Recipe

This repository provides Kaldi-style recipes, as the same as ESPnet.
Currently, the following recipes are supported.

To run the recipe, please follow the below instruction.

# Let us move on the recipe directory
$ cd egs/ljspeech/vc1

# Run the recipe from scratch
$ ./run.sh

# You can change config via command line
$ ./run.sh --conf <your_customized_yaml_config>

# You can select the stage to start and stop
$ ./run.sh --stage 2 --stop_stage 2

# If you want to specify the gpu
$ CUDA_VISIBLE_DEVICES=1 ./run.sh --stage 2

# If you want to resume training from 10000 steps checkpoint
$ ./run.sh --stage 2 --resume <path>/<to>/checkpoint-10000steps.pkl

See more info about the recipes in this README.

Speed

TBA

Results

TBA

How-to-use pretrained models

TBA

References

Acknowledgement

The author would like to thank Ryuichi Yamamoto (@r9y9) for his great repository, paper, and valuable discussions. also autor would like to thank Tomoki Hayashi (@kan-bayashi) for his greeeeat repository.

Author

Jaegeon Jo (@ToraRuka)
E-mail: toraruka623<at>gmail.com

About

Unofficial Parallel WaveGAN VC with Pytorch

License:MIT License


Languages

Language:Jupyter Notebook 92.1%Language:Python 3.4%Language:Shell 3.1%Language:Perl 1.4%Language:Makefile 0.0%