mirror of
https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI.git
synced 2025-01-01 20:45:04 +08:00
c8261b2ccc
* Reformat
* rewrite _get_name_params
* Add workflow for automatic formatting
* Revert "Add workflow for automatic formatting"
This reverts commit 9111c5dbc1
.
* revert Retrieval_based_Voice_Conversion_WebUI.ipynb
---------
Co-authored-by: 源文雨 <41315874+fumiama@users.noreply.github.com>
70 lines
1.6 KiB
Python
70 lines
1.6 KiB
Python
import json
|
|
import os
|
|
import pathlib
|
|
|
|
default_param = {}
|
|
default_param["bins"] = 768
|
|
default_param["unstable_bins"] = 9 # training only
|
|
default_param["reduction_bins"] = 762 # training only
|
|
default_param["sr"] = 44100
|
|
default_param["pre_filter_start"] = 757
|
|
default_param["pre_filter_stop"] = 768
|
|
default_param["band"] = {}
|
|
|
|
|
|
default_param["band"][1] = {
|
|
"sr": 11025,
|
|
"hl": 128,
|
|
"n_fft": 960,
|
|
"crop_start": 0,
|
|
"crop_stop": 245,
|
|
"lpf_start": 61, # inference only
|
|
"res_type": "polyphase",
|
|
}
|
|
|
|
default_param["band"][2] = {
|
|
"sr": 44100,
|
|
"hl": 512,
|
|
"n_fft": 1536,
|
|
"crop_start": 24,
|
|
"crop_stop": 547,
|
|
"hpf_start": 81, # inference only
|
|
"res_type": "sinc_best",
|
|
}
|
|
|
|
|
|
def int_keys(d):
|
|
r = {}
|
|
for k, v in d:
|
|
if k.isdigit():
|
|
k = int(k)
|
|
r[k] = v
|
|
return r
|
|
|
|
|
|
class ModelParameters(object):
|
|
def __init__(self, config_path=""):
|
|
if ".pth" == pathlib.Path(config_path).suffix:
|
|
import zipfile
|
|
|
|
with zipfile.ZipFile(config_path, "r") as zip:
|
|
self.param = json.loads(
|
|
zip.read("param.json"), object_pairs_hook=int_keys
|
|
)
|
|
elif ".json" == pathlib.Path(config_path).suffix:
|
|
with open(config_path, "r") as f:
|
|
self.param = json.loads(f.read(), object_pairs_hook=int_keys)
|
|
else:
|
|
self.param = default_param
|
|
|
|
for k in [
|
|
"mid_side",
|
|
"mid_side_b",
|
|
"mid_side_b2",
|
|
"stereo_w",
|
|
"stereo_n",
|
|
"reverse",
|
|
]:
|
|
if not k in self.param:
|
|
self.param[k] = False
|