Spaces:
Running
Running
import os | |
import wget | |
import sys | |
url_base = "https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main" | |
models_download = [ | |
( | |
"pretrained/", | |
[ | |
"D32k.pth", | |
"D40k.pth", | |
"D48k.pth", | |
"G32k.pth", | |
"G40k.pth", | |
"G48k.pth", | |
"f0D32k.pth", | |
"f0D40k.pth", | |
"f0D48k.pth", | |
"f0G32k.pth", | |
"f0G40k.pth", | |
"f0G48k.pth", | |
], | |
), | |
( | |
"pretrained_v2/", | |
[ | |
"D32k.pth", | |
"D40k.pth", | |
"D48k.pth", | |
"G32k.pth", | |
"G40k.pth", | |
"G48k.pth", | |
"f0D32k.pth", | |
"f0D40k.pth", | |
"f0D48k.pth", | |
"f0G32k.pth", | |
"f0G40k.pth", | |
"f0G48k.pth", | |
], | |
), | |
] | |
models_file = [ | |
"hubert_base.pt", | |
"rmvpe.pt", | |
# "rmvpe.onnx", | |
] | |
executables_file = [ | |
"ffmpeg.exe", | |
"ffprobe.exe", | |
] | |
folder_mapping = { | |
"pretrained/": "rvc/pretraineds/pretrained_v1/", | |
"pretrained_v2/": "rvc/pretraineds/pretrained_v2/", | |
} | |
for file_name in models_file: | |
destination_path = os.path.join(file_name) | |
url = f"{url_base}/{file_name}" | |
if not os.path.exists(destination_path): | |
os.makedirs(os.path.dirname(destination_path) or ".", exist_ok=True) | |
print(f"\nDownloading {url} to {destination_path}...") | |
wget.download(url, out=destination_path) | |
for file_name in executables_file: | |
if sys.platform == "win32": | |
destination_path = os.path.join(file_name) | |
url = f"{url_base}/{file_name}" | |
if not os.path.exists(destination_path): | |
os.makedirs(os.path.dirname(destination_path) or ".", exist_ok=True) | |
print(f"\nDownloading {url} to {destination_path}...") | |
wget.download(url, out=destination_path) | |
for remote_folder, file_list in models_download: | |
local_folder = folder_mapping.get(remote_folder, "") | |
for file in file_list: | |
destination_path = os.path.join(local_folder, file) | |
url = f"{url_base}/{remote_folder}{file}" | |
if not os.path.exists(destination_path): | |
os.makedirs(os.path.dirname(destination_path) or ".", exist_ok=True) | |
print(f"\nDownloading {url} to {destination_path}...") | |
wget.download(url, out=destination_path) |