Spaces:
Running
Running
File size: 2,889 Bytes
55adc26 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
import os
import wget
url_base = "https://huggingface.co/IAHispano/Applio/resolve/main/Resources"
pretraineds_v1_list = [
(
"pretrained_v1/",
[
"D32k.pth",
"D40k.pth",
"D48k.pth",
"G32k.pth",
"G40k.pth",
"G48k.pth",
"f0D32k.pth",
"f0D40k.pth",
"f0D48k.pth",
"f0G32k.pth",
"f0G40k.pth",
"f0G48k.pth",
],
),
]
pretraineds_v2_list = [
(
"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_list = [
"rmvpe.pt",
"fcpe.pt",
# "rmvpe.onnx"
]
embedders_list = [
(
"embedders/",
[
"hubert_base.pt",
"contentvec_base.pt",
],
),
]
executables_list = ["ffmpeg.exe", "ffprobe.exe"]
folder_mapping_list = {
"pretrained_v1/": "rvc/pretraineds/pretrained_v1/",
"pretrained_v2/": "rvc/pretraineds/pretrained_v2/",
"embedders/": "rvc/embedders/",
}
def prequisites_download_pipeline(pretraineds_v1, pretraineds_v2, models, exe):
def download_files(file_list):
for file_name in file_list:
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)
def download_mapping_files(list):
for remote_folder, file_list in list:
local_folder = folder_mapping_list.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)
if models == "True":
download_files(models_list)
download_mapping_files(embedders_list)
if exe == "True" and os.name == "nt":
download_files(executables_list)
if pretraineds_v1 == "True":
download_mapping_files(pretraineds_v1_list)
if pretraineds_v2 == "True":
download_mapping_files(pretraineds_v2_list)
|