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.
2.0 KiB
2.0 KiB
WaveFlow with LJSpeech
Dataset
Download the datasaet.
wget https://data.keithito.com/data/speech/LJSpeech-1.1.tar.bz2
Extract the dataset.
tar xjvf LJSpeech-1.1.tar.bz2
Get Started
Assume the path to the dataset is ~/datasets/LJSpeech-1.1
.
Assume the path to the Tacotron2 generated mels is ../tts0/output/test
.
Run the command below to
- source path.
- preprocess the dataset,
- train the model.
- synthesize wavs from mels.
./run.sh
Preprocess the dataset.
./local/preprocess.sh ${preprocess_path}
Train the model
./local/train.sh
calls ${BIN_DIR}/train.py
.
CUDA_VISIBLE_DEVICES=${gpus} ./local/train.sh ${preprocess_path} ${train_output_path}
The training script requires 4 command line arguments.
--data
is the path of the training dataset.--output
is the path of the output directory.--device
should be "cpu" or "gpu"--nprocs
is the number of processes to train the model in parallel.
If you want distributed training, set a larger --nprocs
(e.g. 4). Note that distributed training with cpu is not supported yet.
Synthesize
./local/synthesize.sh
calls ${BIN_DIR}/synthesize.py
, which can synthesize waveform from mels.
CUDA_VISIBLE_DEVICES=${gpus} ./local/synthesize.sh ${input_mel_path} ${train_output_path} ${ckpt_name}
Synthesize waveform.
- We assume the
--input
is a directory containing several mel spectrograms(log magnitude) in.npy
format. - The output would be saved in
--output
directory, containing several.wav
files, each with the same name as the mel spectrogram does. --checkpoint_path
should be the path of the parameter file (.pdparams
) to load. Note that the extention name.pdparmas
is not included here.--device
specifies to device to run synthesis on.
Pretrained Model
Pretrained Model with residual channel equals 128 can be downloaded here. waveflow_ljspeech_ckpt_0.3.zip.