sovits-test / prepare /preprocess_train.py
atsushieee's picture
Upload folder using huggingface_hub
9791162
raw
history blame
2.47 kB
import os
import random
def print_error(info):
print(f"\033[31m File isn't existed: {info}\033[0m")
IndexBySinger = False
if __name__ == "__main__":
os.makedirs("./files/", exist_ok=True)
rootPath = "./data_svc/waves-32k/"
all_items = []
for spks in os.listdir(f"./{rootPath}"):
if not os.path.isdir(f"./{rootPath}/{spks}"):
continue
print(f"./{rootPath}/{spks}")
for file in os.listdir(f"./{rootPath}/{spks}"):
if file.endswith(".wav"):
file = file[:-4]
if (IndexBySinger == False):
path_spk = f"./data_svc/speaker/{spks}/{file}.spk.npy"
else:
path_spk = f"./data_svc/singer/{spks}.spk.npy"
path_wave = f"./data_svc/waves-32k/{spks}/{file}.wav"
path_spec = f"./data_svc/specs/{spks}/{file}.pt"
path_pitch = f"./data_svc/pitch/{spks}/{file}.pit.npy"
path_hubert = f"./data_svc/hubert/{spks}/{file}.vec.npy"
path_whisper = f"./data_svc/whisper/{spks}/{file}.ppg.npy"
has_error = 0
if not os.path.isfile(path_spk):
print_error(path_spk)
has_error = 1
if not os.path.isfile(path_wave):
print_error(path_wave)
has_error = 1
if not os.path.isfile(path_spec):
print_error(path_spec)
has_error = 1
if not os.path.isfile(path_pitch):
print_error(path_pitch)
has_error = 1
if not os.path.isfile(path_hubert):
print_error(path_hubert)
has_error = 1
if not os.path.isfile(path_whisper):
print_error(path_whisper)
has_error = 1
if has_error == 0:
all_items.append(
f"{path_wave}|{path_spec}|{path_pitch}|{path_hubert}|{path_whisper}|{path_spk}")
random.shuffle(all_items)
valids = all_items[:10]
valids.sort()
trains = all_items[10:]
# trains.sort()
fw = open("./files/valid.txt", "w", encoding="utf-8")
for strs in valids:
print(strs, file=fw)
fw.close()
fw = open("./files/train.txt", "w", encoding="utf-8")
for strs in trains:
print(strs, file=fw)
fw.close()