From 044883d3e52e014fd371730b7a92885917b1afba Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Fri, 28 Apr 2023 15:26:07 -0700 Subject: [PATCH] control hubert loading/saving --- .../so-vits-svc-paul/src/so_vits_svc_fork/utils.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/voice_conversion/so-vits-svc-paul/src/so_vits_svc_fork/utils.py b/voice_conversion/so-vits-svc-paul/src/so_vits_svc_fork/utils.py index b32503e..959a60a 100644 --- a/voice_conversion/so-vits-svc-paul/src/so_vits_svc_fork/utils.py +++ b/voice_conversion/so-vits-svc-paul/src/so_vits_svc_fork/utils.py @@ -1,5 +1,6 @@ from __future__ import annotations +import os import json import re from itertools import groupby @@ -312,9 +313,19 @@ def ensure_pretrained_model(folder_path: Path) -> None: if not model_path.exists(): download_file(model_url, model_path, desc=f"Downloading {model_path.name}") +def fakeyou_hubert_path(): + """ + Env var `HUBERT_PATH` lets external callers set where Hubert gets loaded or saved. + """ + default_path = 'checkpoint_best_legacy_500.pt' # current directory + hubert_path = os.getenv('HUBERT_PATH') + if not hubert_path: + hubert_path = default_path + return Path(hubert_path) def ensure_hubert_model() -> Path: - vec_path = Path("checkpoint_best_legacy_500.pt") + # NB(bt): We need to control where hubert gets loaded from / saved to. + vec_path = fakeyou_hubert_path() vec_path.parent.mkdir(parents=True, exist_ok=True) if not vec_path.exists(): # url = "http://obs.cstcloud.cn/share/obs/sankagenkeshi/checkpoint_best_legacy_500.pt"