diff --git a/default_style.py b/default_style.py index e75257d..7593fe5 100644 --- a/default_style.py +++ b/default_style.py @@ -1,5 +1,7 @@ import json import os +from pathlib import Path +from typing import Union import numpy as np @@ -7,7 +9,7 @@ from style_bert_vits2.constants import DEFAULT_STYLE from style_bert_vits2.logging import logger -def set_style_config(json_path, output_path): +def set_style_config(json_path: Path, output_path: Path): with open(json_path, "r", encoding="utf-8") as f: json_dict = json.load(f) json_dict["data"]["num_styles"] = 1 @@ -17,12 +19,13 @@ def set_style_config(json_path, output_path): logger.info(f"Save style config (only {DEFAULT_STYLE}) to {output_path}") -def save_mean_vector(wav_dir, output_path): +def save_neutral_vector(wav_dir: Union[Path, str], output_path: Union[Path, str]): + wav_dir = Path(wav_dir) + output_path = Path(output_path) embs = [] - for file in os.listdir(wav_dir): - if file.endswith(".npy"): - xvec = np.load(os.path.join(wav_dir, file)) - embs.append(np.expand_dims(xvec, axis=0)) + for file in wav_dir.rglob("*.npy"): + xvec = np.load(os.path.join(wav_dir, file)) + embs.append(np.expand_dims(xvec, axis=0)) x = np.concatenate(embs, axis=0) # (N, 256) mean = np.mean(x, axis=0) # (256,) diff --git a/train_ms.py b/train_ms.py index c2538da..067a6a5 100644 --- a/train_ms.py +++ b/train_ms.py @@ -196,7 +196,7 @@ def run(): default_style.set_style_config( args.config, os.path.join(config.out_dir, "config.json") ) - default_style.save_mean_vector( + default_style.save_neutral_vector( os.path.join(args.model, "wavs"), os.path.join(config.out_dir, "style_vectors.npy"), ) diff --git a/train_ms_jp_extra.py b/train_ms_jp_extra.py index 7b2cb42..ad3d3bd 100644 --- a/train_ms_jp_extra.py +++ b/train_ms_jp_extra.py @@ -195,7 +195,7 @@ def run(): default_style.set_style_config( args.config, os.path.join(config.out_dir, "config.json") ) - default_style.save_mean_vector( + default_style.save_neutral_vector( os.path.join(args.model, "wavs"), os.path.join(config.out_dir, "style_vectors.npy"), )