Spaces:
No application file
No application file
| import os.path | |
| import shutil | |
| import urllib.request | |
| import huggingface_hub | |
| class HuBERTManager: | |
| def make_sure_hubert_installed(download_url: str = 'https://dl.fbaipublicfiles.com/hubert/hubert_base_ls960.pt', file_name: str = 'hubert.pt'): | |
| install_dir = os.path.join('data', 'models', 'hubert') | |
| if not os.path.isdir(install_dir): | |
| os.makedirs(install_dir, exist_ok=True) | |
| install_file = os.path.join(install_dir, file_name) | |
| if not os.path.isfile(install_file): | |
| print('Downloading HuBERT base model') | |
| urllib.request.urlretrieve(download_url, install_file) | |
| print('Downloaded HuBERT') | |
| return install_file | |
| def make_sure_tokenizer_installed(model: str = 'quantifier_hubert_base_ls960_14.pth', repo: str = 'GitMylo/bark-voice-cloning', local_file: str = 'tokenizer.pth'): | |
| install_dir = os.path.join('data', 'models', 'hubert') | |
| if not os.path.isdir(install_dir): | |
| os.makedirs(install_dir, exist_ok=True) | |
| install_file = os.path.join(install_dir, local_file) | |
| if not os.path.isfile(install_file): | |
| print('Downloading HuBERT custom tokenizer') | |
| huggingface_hub.hf_hub_download(repo, model, local_dir=install_dir, local_dir_use_symlinks=False) | |
| shutil.move(os.path.join(install_dir, model), install_file) | |
| print('Downloaded tokenizer') | |
| return install_file | |
| def make_sure_hubert_rvc_installed(model: str = 'hubert_base.pt', repo: str = 'lj1995/VoiceConversionWebUI', local_file: str = 'hubert_rvc.pt'): | |
| install_dir = os.path.join('data', 'models', 'hubert') | |
| if not os.path.isdir(install_dir): | |
| os.makedirs(install_dir, exist_ok=True) | |
| install_file = os.path.join(install_dir, local_file) | |
| if not os.path.isfile(install_file): | |
| print('Downloading HuBERT for RVC') | |
| huggingface_hub.hf_hub_download(repo, model, local_dir=install_dir, local_dir_use_symlinks=False) | |
| shutil.move(os.path.join(install_dir, model), install_file) | |
| print('Downloaded HuBERT for RVC') | |
| return install_file | |