1
0
mirror of https://github.com/fumiama/Retrieval-based-Voice-Conversion-WebUI.git synced 2026-06-05 01:10:22 +08:00

fix(rtrvc): parameter issue

This commit is contained in:
源文雨
2024-06-16 15:04:48 +09:00
parent a246a669cd
commit df83554ac1
3 changed files with 22 additions and 10 deletions

21
gui.py
View File

@@ -172,6 +172,7 @@ if __name__ == "__main__":
data["sr_model"] = data["sr_type"] == "sr_model"
data["sr_device"] = data["sr_type"] == "sr_device"
data["pm"] = data["f0method"] == "pm"
data["dio"] = data["f0method"] == "dio"
data["harvest"] = data["f0method"] == "harvest"
data["crepe"] = data["f0method"] == "crepe"
data["rmvpe"] = data["f0method"] == "rmvpe"
@@ -228,6 +229,7 @@ if __name__ == "__main__":
data["sr_model"] = data["sr_type"] == "sr_model"
data["sr_device"] = data["sr_type"] == "sr_device"
data["pm"] = data["f0method"] == "pm"
data["dio"] = data["f0method"] == "dio"
data["harvest"] = data["f0method"] == "harvest"
data["crepe"] = data["f0method"] == "crepe"
data["rmvpe"] = data["f0method"] == "rmvpe"
@@ -405,6 +407,13 @@ if __name__ == "__main__":
default=data.get("pm", False),
enable_events=True,
),
sg.Radio(
"dio",
"f0method",
key="dio",
default=data.get("dio", False),
enable_events=True,
),
sg.Radio(
"harvest",
"f0method",
@@ -614,9 +623,10 @@ if __name__ == "__main__":
# "use_jit": values["use_jit"],
"use_jit": False,
"use_pv": values["use_pv"],
"f0method": ["pm", "harvest", "crepe", "rmvpe", "fcpe"][
"f0method": ["pm", "dio", "harvest", "crepe", "rmvpe", "fcpe"][
[
values["pm"],
values["dio"],
values["harvest"],
values["crepe"],
values["rmvpe"],
@@ -656,7 +666,7 @@ if __name__ == "__main__":
self.rvc.set_index_rate(values["index_rate"])
elif event == "rms_mix_rate":
self.gui_config.rms_mix_rate = values["rms_mix_rate"]
elif event in ["pm", "harvest", "crepe", "rmvpe", "fcpe"]:
elif event in ["pm", "dio", "harvest", "crepe", "rmvpe", "fcpe"]:
self.gui_config.f0method = event
elif event == "I_noise_reduce":
self.gui_config.I_noise_reduce = values["I_noise_reduce"]
@@ -718,9 +728,10 @@ if __name__ == "__main__":
self.gui_config.rms_mix_rate = values["rms_mix_rate"]
self.gui_config.index_rate = values["index_rate"]
self.gui_config.n_cpu = values["n_cpu"]
self.gui_config.f0method = ["pm", "harvest", "crepe", "rmvpe", "fcpe"][
self.gui_config.f0method = ["pm", "dio", "harvest", "crepe", "rmvpe", "fcpe"][
[
values["pm"],
values["dio"],
values["harvest"],
values["crepe"],
values["rmvpe"],
@@ -1003,7 +1014,7 @@ if __name__ == "__main__":
sola_offset = sola_offset.item()
else:
sola_offset = torch.argmax(cor_nom[0, 0] / cor_den[0, 0])
printt("sola_offset = %d", int(sola_offset))
# printt("sola_offset = %d", int(sola_offset))
infer_wav = infer_wav[sola_offset:]
if "privateuseone" in str(self.config.device) or not self.gui_config.use_pv:
infer_wav[: self.sola_buffer_frame] *= self.fade_in_window
@@ -1030,7 +1041,7 @@ if __name__ == "__main__":
total_time = time.perf_counter() - start_time
if flag_vc:
self.window["infer_time"].update(int(total_time * 1000))
printt("Infer time: %.2f", total_time)
# printt("Infer time: %.2f", total_time)
def update_devices(self, hostapi_name=None):
"""获取设备列表"""