Fork of https://github.com/alokprasad/fastspeech_squeezewave to also fix denoising in squeezewave
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
alokprasad ecfe196598 changes for squeezewave and non cuda 4 years ago
..
audio Original Fastspeech and Squeezewave 4 years ago
data Original Fastspeech and Squeezewave 4 years ago
img Original Fastspeech and Squeezewave 4 years ago
model_new model_path 4 years ago
results Original Fastspeech and Squeezewave 4 years ago
tacotron2 Original Fastspeech and Squeezewave 4 years ago
text Original Fastspeech and Squeezewave 4 years ago
transformer Original Fastspeech and Squeezewave 4 years ago
waveglow Original Fastspeech and Squeezewave 4 years ago
.gitignore Original Fastspeech and Squeezewave 4 years ago
LICENSE Original Fastspeech and Squeezewave 4 years ago
README.md Original Fastspeech and Squeezewave 4 years ago
alignments.zip Original Fastspeech and Squeezewave 4 years ago
dataset.py Original Fastspeech and Squeezewave 4 years ago
fastspeech.py Original Fastspeech and Squeezewave 4 years ago
glow.py Original Fastspeech and Squeezewave 4 years ago
hparams.py Original Fastspeech and Squeezewave 4 years ago
loss.py Original Fastspeech and Squeezewave 4 years ago
modules.py Original Fastspeech and Squeezewave 4 years ago
optimizer.py Original Fastspeech and Squeezewave 4 years ago
preprocess.py Original Fastspeech and Squeezewave 4 years ago
synthesis.py changes for squeezewave and non cuda 4 years ago
train.py Original Fastspeech and Squeezewave 4 years ago
utils.py Original Fastspeech and Squeezewave 4 years ago

README.md

FastSpeech-Pytorch

The Implementation of FastSpeech Based on Pytorch.

Update

2019/10/23

  1. Fix bugs in alignment;
  2. Fix bugs in transformer;
  3. Fix bugs in LengthRegulator;
  4. Change the way to process audio;
  5. Use waveglow to synthesize.

Model

My Blog

Start

Dependencies

  • python 3.6
  • CUDA 10.0
  • pytorch==1.1.0
  • nump==1.16.2
  • scipy==1.2.1
  • librosa==0.6.3
  • inflect==2.1.0
  • matplotlib==2.2.2

Prepare Dataset

  1. Download and extract LJSpeech dataset.
  2. Put LJSpeech dataset in data.
  3. Unzip alignments.zip *
  4. Put Nvidia pretrained waveglow model in the waveglow/pretrained_model;
  5. Run python preprocess.py.

* if you want to calculate alignment, don't unzip alignments.zip and put Nvidia pretrained Tacotron2 model in the Tacotron2/pretrained_model

Training

Run python train.py.

Test

Run python synthesis.py.

Pretrained Model

Notes

  • In the paper of FastSpeech, authors use pre-trained Transformer-TTS to provide the target of alignment. I didn't have a well-trained Transformer-TTS model so I use Tacotron2 instead.
  • The examples of audio are in results.
  • The outputs and alignment of Tacotron2 are shown as follows (The sentence for synthesizing is "I want to go to CMU to do research on deep learning."):
  • The outputs of FastSpeech and Tacotron2 (Right one is tacotron2) are shown as follows (The sentence for synthesizing is "Printing, in the only sense with which we are at present concerned, differs from most if not from all the arts and crafts represented in the Exhibition."):

Reference