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

preprocess issue #1

Closed
Chuk101 opened this issue Jun 24, 2021 · 8 comments
Closed

preprocess issue #1

Chuk101 opened this issue Jun 24, 2021 · 8 comments

Comments

@Chuk101
Copy link

Chuk101 commented Jun 24, 2021

After downloaded the VCTK Corpus and copy the file under /Dataset (and create a directory '/Dataset/VCTK-Corpus/' to include the file: speaker-info.txt), I run the preprocess.py and get the following result. How can I fix this?

(voice-clone) C:\Python\VQMIVC>python preprocess.py
all_spks: ['257', '294', '304', '297', '226', '282', '247', '330', '361', '252', '293', '306', '340', '231', '268', '283', '243', '334', '315', '269', '285', '310', '230', '311', '374', '307', '286', '323', '245', '227', '239', '240', '363', '284', '251', '318', '246', '265', '244', '228', '333', '276', '255', '225', '308', '260', '339', '312', '336', '347', '345', '258', '335', '270', '376', '237', '316', '326', '364', '273', '263', '259', '267', '292', '232', '229', '254', '264', '287', '278', '236', '317', '272', '233', '234', '248', '249', '305', '299', '281', '302', '329', '262', '351', '288', '298', '250', '343', '256', '300', '275', '341', '279', '277', '271', '241', '303', '274', '313', '266', '301', '253', '261', '314', '295', '360', '362', '238']
len(spk_wavs): 0
len(spk_wavs): 0
len(spk_wavs): 0
.
.
.
len(spk_wavs): 0
len(spk_wavs): 0
len(spk_wavs): 0
0
0
0
extract log-mel...
0it [00:00, ?it/s]
normalize log-mel...
Traceback (most recent call last):
File "preprocess.py", line 141, in
mels = np.concatenate(mels, 0)
File "<array_function internals>", line 6, in concatenate
ValueError: need at least one array to concatenate

@Wendison
Copy link
Owner

According to the printing information, no wav is detected. May I know which version of VCTK corpus did you download? The latest version of VCTK should have the following directory: '/Dataset/VCTK-Corpus/wav48_silence_trimmed/{spk-id}/{wav-name}.mic1.flac', it is different from the older version of VCTK that contains the wav with '.wav' as suffix. If you have the latest version of VCTK, it should work as expected. Besides, please re-check to ensure the wavs path is correct.

@Chuk101
Copy link
Author

Chuk101 commented Jun 25, 2021

It was RELEASE August 2012 (Version 0.80). There is no directory named '/Dataset/VCTK-Corpus/wav48_silence_trimmed' Guess I need to download the newest version. It may take a day. Do you have better mirror sites for download?

@Wendison
Copy link
Owner

sry, my download speed is as slow as yours. If you want to use old version of VCTK, you can try to modify the path to your current path of VCTK, e.g., '/Dataset/VCTK-Corpus/wav48_silence_trimmed' -> '/Dataset/VCTK-Corpus/wav48', '.mic1.flac' -> '.wav', etc. I think the resulting performance should be similar.

@Chuk101
Copy link
Author

Chuk101 commented Jun 25, 2021

20 hours left to download the new version. In the meantime, I shall rename the directory and the file names. Let's see how it goes.

@Chuk101
Copy link
Author

Chuk101 commented Jun 25, 2021

Run it again with the renamed directory and file names. But the result is exactly the same as the first comment. Am I missing something?

FYI - code to change the file names:

import glob, os
from os import listdir
from os.path import isfile, join

mypath = 'Dataset/VCTK-Corpus/wav48_silence_trimmed'

for folders in listdir(mypath):
filepath = os.path.join(mypath, folders)
for filename in glob.iglob(os.path.join(filepath, '*.wav')):
os.rename(filename, filename[:-4] + '.mic1.flac')

@Wendison
Copy link
Owner

sry, my download speed is as slow as yours. If you want to use old version of VCTK, you can try to modify the path to your current path of VCTK, e.g., '/Dataset/VCTK-Corpus/wav48_silence_trimmed' -> '/Dataset/VCTK-Corpus/wav48', '.mic1.flac' -> '.wav', etc. I think the resulting performance should be similar.

What I mean is to make these changes in the code, e.g., '.mic1.flac' changed to '.wav', not to physically change the directory names and suffix of wavs.

@Chuk101
Copy link
Author

Chuk101 commented Jun 25, 2021

changed the 'mic1.flac' to '.wav' and the directory: data_root = '/Dataset/VCTK-Corpus/wav48'

Also found the folders for variable 'spk' has a prefix p (p225, p226...etc).

It seems I have to change folder names, otherwise "spk_wavs = glob(f'{data_root}/{spk}/*.wav')" will not be able to read these files.

@Wendison
Copy link
Owner

Please make sure 'spk_wavs' has length > 1, otherwise you can't process any wavs.

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

2 participants