From 363b33617a3055b630e4e1e568502922e28f0faf Mon Sep 17 00:00:00 2001 From: Justin John <34035011+justinjohn0306@users.noreply.github.com> Date: Sun, 24 Sep 2023 18:41:17 +0530 Subject: [PATCH] Add files via upload --- .../logs/mute/0_gt_wavs/mute32k.wav | Bin 0 -> 192078 bytes .../logs/mute/0_gt_wavs/mute40k.wav | Bin 0 -> 240078 bytes .../logs/mute/0_gt_wavs/mute48k.wav | Bin 0 -> 288078 bytes .../logs/mute/1_16k_wavs/mute.wav | Bin 0 -> 96078 bytes .../logs/mute/2a_f0/mute.wav.npy | Bin 0 -> 1332 bytes .../logs/mute/2b-f0nsf/mute.wav.npy | Bin 0 -> 2536 bytes .../logs/mute/3_feature256/mute.npy | Bin 0 -> 152704 bytes .../logs/mute/3_feature768/mute.npy | Bin 0 -> 457856 bytes voice_conversion/rvc-v2-brandon/tools/app.py | 147 +++++ .../tools/calc_rvc_model_similarity.py | 96 +++ .../rvc-v2-brandon/tools/dlmodels.bat | 348 +++++++++++ .../rvc-v2-brandon/tools/dlmodels.sh | 566 ++++++++++++++++++ .../rvc-v2-brandon/tools/export_onnx.py | 54 ++ .../tools/infer/infer-pm-index256.py | 202 +++++++ .../tools/infer/train-index-v2.py | 79 +++ .../rvc-v2-brandon/tools/infer/train-index.py | 42 ++ .../tools/infer/trans_weights.py | 18 + .../rvc-v2-brandon/tools/infer_batch_rvc.py | 72 +++ .../rvc-v2-brandon/tools/infer_cli.py | 67 +++ .../tools/onnx_inference_demo.py | 21 + .../rvc-v2-brandon/tools/rvc_for_realtime.py | 375 ++++++++++++ .../tools/torchgate/__init__.py | 12 + .../tools/torchgate/torchgate.py | 264 ++++++++ .../rvc-v2-brandon/tools/torchgate/utils.py | 70 +++ 24 files changed, 2433 insertions(+) create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/0_gt_wavs/mute32k.wav create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/0_gt_wavs/mute40k.wav create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/0_gt_wavs/mute48k.wav create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/1_16k_wavs/mute.wav create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/2a_f0/mute.wav.npy create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/2b-f0nsf/mute.wav.npy create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/3_feature256/mute.npy create mode 100644 voice_conversion/rvc-v2-brandon/logs/mute/3_feature768/mute.npy create mode 100644 voice_conversion/rvc-v2-brandon/tools/app.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/calc_rvc_model_similarity.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/dlmodels.bat create mode 100644 voice_conversion/rvc-v2-brandon/tools/dlmodels.sh create mode 100644 voice_conversion/rvc-v2-brandon/tools/export_onnx.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/infer/infer-pm-index256.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/infer/train-index-v2.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/infer/train-index.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/infer/trans_weights.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/infer_batch_rvc.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/infer_cli.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/onnx_inference_demo.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/rvc_for_realtime.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/torchgate/__init__.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/torchgate/torchgate.py create mode 100644 voice_conversion/rvc-v2-brandon/tools/torchgate/utils.py diff --git a/voice_conversion/rvc-v2-brandon/logs/mute/0_gt_wavs/mute32k.wav b/voice_conversion/rvc-v2-brandon/logs/mute/0_gt_wavs/mute32k.wav new file mode 100644 index 0000000000000000000000000000000000000000..b4b5029205bf72dee5856bbe0c65c34337dc8dd4 GIT binary patch literal 192078 zcmeIuF$%&!5CzaN2awcOo*+a)(9*(%g`i-9)&WUp7wo*U2e5LlVE_Ja{xnm(YfdSB zs<xfvC#=DGfL=|;(xgS>L%;$8;eHxZ!cjIf??VIhP*|cpu#(9kLMFY?#1O{- literal 0 HcmV?d00001 diff --git a/voice_conversion/rvc-v2-brandon/logs/mute/0_gt_wavs/mute48k.wav b/voice_conversion/rvc-v2-brandon/logs/mute/0_gt_wavs/mute48k.wav new file mode 100644 index 0000000000000000000000000000000000000000..72822a01251e77d7d2a4a7da9d94805426829083 GIT binary patch literal 288078 zcmeIuF$%&^5CqVTSW9XvPY|LYXldbxKu|D2>wu=S3)*@wFXumm<(p|{n=Rg@Nhv+% zaXVa(<8xY-5mDrRzInWhm_-?F)Ah@IHm7uMy3{Z7Zim;n-Bp`?wXW;957Q9&ix40{ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF K5FkL{UjjeN{10CM literal 0 HcmV?d00001 diff --git a/voice_conversion/rvc-v2-brandon/logs/mute/1_16k_wavs/mute.wav b/voice_conversion/rvc-v2-brandon/logs/mute/1_16k_wavs/mute.wav new file mode 100644 index 0000000000000000000000000000000000000000..27a7d638558539c521aacf8c0f34bd0d4816aa9d GIT binary patch literal 96078 zcmeIuF$%&!5CzbQ2awcOo4^ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!CtM Ffgj{54+Q`K literal 0 HcmV?d00001 diff --git a/voice_conversion/rvc-v2-brandon/logs/mute/2a_f0/mute.wav.npy b/voice_conversion/rvc-v2-brandon/logs/mute/2a_f0/mute.wav.npy new file mode 100644 index 0000000000000000000000000000000000000000..a7ecfbf9295b11a58fa1316e03ac3d0e85fa3ad6 GIT binary patch literal 1332 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlWC%^qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= oXCxM+0{I%o28KGCItsN4WCJcn1_p*vJQ@b0X<#%B43#th0Co!;s{jB1 literal 0 HcmV?d00001 diff --git a/voice_conversion/rvc-v2-brandon/logs/mute/2b-f0nsf/mute.wav.npy b/voice_conversion/rvc-v2-brandon/logs/mute/2b-f0nsf/mute.wav.npy new file mode 100644 index 0000000000000000000000000000000000000000..cf5c21bd4c9bfca9d8a39708454eee44757e608d GIT binary patch literal 2536 zcmbR27wQ`j$;eQ~P_3SlTAW;@Zl$1ZlV+i=qoAIaUsO_*m=~X4l#&V(cT3DEP6dh= xXCxM+0{I%o28KGCItsN4WCJdSQ7{?;qaiRF0;3@?8UmvsFd71*AwZK5000fP8-D-* literal 0 HcmV?d00001 diff --git a/voice_conversion/rvc-v2-brandon/logs/mute/3_feature256/mute.npy b/voice_conversion/rvc-v2-brandon/logs/mute/3_feature256/mute.npy new file mode 100644 index 0000000000000000000000000000000000000000..ffe35e78401ba03731e2ebe48ed7a73d94198a8f GIT binary patch literal 152704 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�XTz_~yy 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͏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

cHQ^4||Dk&i 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 literal 0 HcmV?d00001 diff --git a/voice_conversion/rvc-v2-brandon/tools/app.py b/voice_conversion/rvc-v2-brandon/tools/app.py new file mode 100644 index 0000000..5b1658c --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/app.py @@ -0,0 +1,147 @@ +import logging +import os + +# os.system("wget -P cvec/ https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/hubert_base.pt") +import gradio as gr +from dotenv import load_dotenv + +from configs.config import Config +from i18n.i18n import I18nAuto +from infer.modules.vc.modules import VC + +logging.getLogger("numba").setLevel(logging.WARNING) +logging.getLogger("markdown_it").setLevel(logging.WARNING) +logging.getLogger("urllib3").setLevel(logging.WARNING) +logging.getLogger("matplotlib").setLevel(logging.WARNING) +logger = logging.getLogger(__name__) + +i18n = I18nAuto() +logger.info(i18n) + +load_dotenv() +config = Config() +vc = VC(config) + +weight_root = os.getenv("weight_root") +weight_uvr5_root = os.getenv("weight_uvr5_root") +index_root = os.getenv("index_root") +names = [] +hubert_model = None +for name in os.listdir(weight_root): + if name.endswith(".pth"): + names.append(name) +index_paths = [] +for root, dirs, files in os.walk(index_root, topdown=False): + for name in files: + if name.endswith(".index") and "trained" not in name: + index_paths.append("%s/%s" % (root, name)) + + +app = gr.Blocks() +with app: + with gr.Tabs(): + with gr.TabItem("在线demo"): + gr.Markdown( + value=""" + RVC 在线demo + """ + ) + sid = gr.Dropdown(label=i18n("推理音色"), choices=sorted(names)) + with gr.Column(): + spk_item = gr.Slider( + minimum=0, + maximum=2333, + step=1, + label=i18n("请选择说话人id"), + value=0, + visible=False, + interactive=True, + ) + sid.change(fn=vc.get_vc, inputs=[sid], outputs=[spk_item]) + gr.Markdown( + value=i18n("男转女推荐+12key, 女转男推荐-12key, 如果音域爆炸导致音色失真也可以自己调整到合适音域. ") + ) + vc_input3 = gr.Audio(label="上传音频(长度小于90秒)") + vc_transform0 = gr.Number(label=i18n("变调(整数, 半音数量, 升八度12降八度-12)"), value=0) + f0method0 = gr.Radio( + label=i18n("选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU"), + choices=["pm", "harvest", "crepe", "rmvpe"], + value="pm", + interactive=True, + ) + filter_radius0 = gr.Slider( + minimum=0, + maximum=7, + label=i18n(">=3则使用对harvest音高识别的结果使用中值滤波,数值为滤波半径,使用可以削弱哑音"), + value=3, + step=1, + interactive=True, + ) + with gr.Column(): + file_index1 = gr.Textbox( + label=i18n("特征检索库文件路径,为空则使用下拉的选择结果"), + value="", + interactive=False, + visible=False, + ) + file_index2 = gr.Dropdown( + label=i18n("自动检测index路径,下拉式选择(dropdown)"), + choices=sorted(index_paths), + interactive=True, + ) + index_rate1 = gr.Slider( + minimum=0, + maximum=1, + label=i18n("检索特征占比"), + value=0.88, + interactive=True, + ) + resample_sr0 = gr.Slider( + minimum=0, + maximum=48000, + label=i18n("后处理重采样至最终采样率,0为不进行重采样"), + value=0, + step=1, + interactive=True, + ) + rms_mix_rate0 = gr.Slider( + minimum=0, + maximum=1, + label=i18n("输入源音量包络替换输出音量包络融合比例,越靠近1越使用输出包络"), + value=1, + interactive=True, + ) + protect0 = gr.Slider( + minimum=0, + maximum=0.5, + label=i18n("保护清辅音和呼吸声,防止电音撕裂等artifact,拉满0.5不开启,调低加大保护力度但可能降低索引效果"), + value=0.33, + step=0.01, + interactive=True, + ) + f0_file = gr.File(label=i18n("F0曲线文件, 可选, 一行一个音高, 代替默认F0及升降调")) + but0 = gr.Button(i18n("转换"), variant="primary") + vc_output1 = gr.Textbox(label=i18n("输出信息")) + vc_output2 = gr.Audio(label=i18n("输出音频(右下角三个点,点了可以下载)")) + but0.click( + vc.vc_single, + [ + spk_item, + vc_input3, + vc_transform0, + f0_file, + f0method0, + file_index1, + file_index2, + # file_big_npy1, + index_rate1, + filter_radius0, + resample_sr0, + rms_mix_rate0, + protect0, + ], + [vc_output1, vc_output2], + ) + + +app.launch() diff --git a/voice_conversion/rvc-v2-brandon/tools/calc_rvc_model_similarity.py b/voice_conversion/rvc-v2-brandon/tools/calc_rvc_model_similarity.py new file mode 100644 index 0000000..8fa0484 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/calc_rvc_model_similarity.py @@ -0,0 +1,96 @@ +# This code references https://huggingface.co/JosephusCheung/ASimilarityCalculatior/blob/main/qwerty.py +# Fill in the path of the model to be queried and the root directory of the reference models, and this script will return the similarity between the model to be queried and all reference models. +import os +import logging + +logger = logging.getLogger(__name__) + +import torch +import torch.nn as nn +import torch.nn.functional as F + + +def cal_cross_attn(to_q, to_k, to_v, rand_input): + hidden_dim, embed_dim = to_q.shape + attn_to_q = nn.Linear(hidden_dim, embed_dim, bias=False) + attn_to_k = nn.Linear(hidden_dim, embed_dim, bias=False) + attn_to_v = nn.Linear(hidden_dim, embed_dim, bias=False) + attn_to_q.load_state_dict({"weight": to_q}) + attn_to_k.load_state_dict({"weight": to_k}) + attn_to_v.load_state_dict({"weight": to_v}) + + return torch.einsum( + "ik, jk -> ik", + F.softmax( + torch.einsum("ij, kj -> ik", attn_to_q(rand_input), attn_to_k(rand_input)), + dim=-1, + ), + attn_to_v(rand_input), + ) + + +def model_hash(filename): + try: + with open(filename, "rb") as file: + import hashlib + + m = hashlib.sha256() + + file.seek(0x100000) + m.update(file.read(0x10000)) + return m.hexdigest()[0:8] + except FileNotFoundError: + return "NOFILE" + + +def eval(model, n, input): + qk = f"enc_p.encoder.attn_layers.{n}.conv_q.weight" + uk = f"enc_p.encoder.attn_layers.{n}.conv_k.weight" + vk = f"enc_p.encoder.attn_layers.{n}.conv_v.weight" + atoq, atok, atov = model[qk][:, :, 0], model[uk][:, :, 0], model[vk][:, :, 0] + + attn = cal_cross_attn(atoq, atok, atov, input) + return attn + + +def main(path, root): + torch.manual_seed(114514) + model_a = torch.load(path, map_location="cpu")["weight"] + + logger.info("Query:\t\t%s\t%s" % (path, model_hash(path))) + + map_attn_a = {} + map_rand_input = {} + for n in range(6): + hidden_dim, embed_dim, _ = model_a[ + f"enc_p.encoder.attn_layers.{n}.conv_v.weight" + ].shape + rand_input = torch.randn([embed_dim, hidden_dim]) + + map_attn_a[n] = eval(model_a, n, rand_input) + map_rand_input[n] = rand_input + + del model_a + + for name in sorted(list(os.listdir(root))): + path = "%s/%s" % (root, name) + model_b = torch.load(path, map_location="cpu")["weight"] + + sims = [] + for n in range(6): + attn_a = map_attn_a[n] + attn_b = eval(model_b, n, map_rand_input[n]) + + sim = torch.mean(torch.cosine_similarity(attn_a, attn_b)) + sims.append(sim) + + logger.info( + "Reference:\t%s\t%s\t%s" + % (path, model_hash(path), f"{torch.mean(torch.stack(sims)) * 1e2:.2f}%") + ) + + +if __name__ == "__main__": + query_path = r"assets\weights\mi v3.pth" + reference_root = r"assets\weights" + main(query_path, reference_root) diff --git a/voice_conversion/rvc-v2-brandon/tools/dlmodels.bat b/voice_conversion/rvc-v2-brandon/tools/dlmodels.bat new file mode 100644 index 0000000..e3f0ffe --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/dlmodels.bat @@ -0,0 +1,348 @@ +@echo off && chcp 65001 + +echo working dir is %cd% +echo downloading requirement aria2 check. +echo= +dir /a:d/b | findstr "aria2" > flag.txt +findstr "aria2" flag.txt >nul +if %errorlevel% ==0 ( + echo aria2 checked. + echo= +) else ( + echo failed. please downloading aria2 from webpage! + echo unzip it and put in this directory! + timeout /T 5 + start https://github.com/aria2/aria2/releases/tag/release-1.36.0 + echo= + goto end +) + +echo envfiles checking start. +echo= + +for /f %%x in ('findstr /i /c:"aria2" "flag.txt"') do (set aria2=%%x)&goto endSch +:endSch + +set d32=f0D32k.pth +set d40=f0D40k.pth +set d48=f0D48k.pth +set g32=f0G32k.pth +set g40=f0G40k.pth +set g48=f0G48k.pth + +set d40v2=f0D40k.pth +set g40v2=f0G40k.pth + +set dld32=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0D32k.pth +set dld40=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0D40k.pth +set dld48=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0D48k.pth +set dlg32=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0G32k.pth +set dlg40=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0G40k.pth +set dlg48=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0G48k.pth + +set dld40v2=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/f0D40k.pth +set dlg40v2=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/f0G40k.pth + +set hp2_all=HP2_all_vocals.pth +set hp3_all=HP3_all_vocals.pth +set hp5_only=HP5_only_main_vocal.pth +set VR_DeEchoAggressive=VR-DeEchoAggressive.pth +set VR_DeEchoDeReverb=VR-DeEchoDeReverb.pth +set VR_DeEchoNormal=VR-DeEchoNormal.pth +set onnx_dereverb=vocals.onnx + +set dlhp2_all=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP2_all_vocals.pth +set dlhp3_all=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP3_all_vocals.pth +set dlhp5_only=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP5_only_main_vocal.pth +set dlVR_DeEchoAggressive=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/VR-DeEchoAggressive.pth +set dlVR_DeEchoDeReverb=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/VR-DeEchoDeReverb.pth +set dlVR_DeEchoNormal=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/VR-DeEchoNormal.pth +set dlonnx_dereverb=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/onnx_dereverb_By_FoxJoy/vocals.onnx + +set hb=hubert_base.pt + +set dlhb=https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/hubert_base.pt + +echo dir check start. +echo= + +if exist "%~dp0assets\pretrained" ( + echo dir .\assets\pretrained checked. + ) else ( + echo failed. generating dir .\assets\pretrained. + mkdir pretrained + ) +if exist "%~dp0assets\pretrained_v2" ( + echo dir .\assets\pretrained_v2 checked. + ) else ( + echo failed. generating dir .\assets\pretrained_v2. + mkdir pretrained_v2 + ) +if exist "%~dp0assets\uvr5_weights" ( + echo dir .\assets\uvr5_weights checked. + ) else ( + echo failed. generating dir .\assets\uvr5_weights. + mkdir uvr5_weights + ) +if exist "%~dp0assets\uvr5_weights\onnx_dereverb_By_FoxJoy" ( + echo dir .\assets\uvr5_weights\onnx_dereverb_By_FoxJoy checked. + ) else ( + echo failed. generating dir .\assets\uvr5_weights\onnx_dereverb_By_FoxJoy. + mkdir uvr5_weights\onnx_dereverb_By_FoxJoy + ) + +echo= +echo dir check finished. + +echo= +echo required files check start. + +echo checking D32k.pth +if exist "%~dp0assets\pretrained\D32k.pth" ( + echo D32k.pth in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/D32k.pth -d %~dp0assets\pretrained -o D32k.pth + if exist "%~dp0assets\pretrained\D32k.pth" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking D40k.pth +if exist "%~dp0assets\pretrained\D40k.pth" ( + echo D40k.pth in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/D40k.pth -d %~dp0assets\pretrained -o D40k.pth + if exist "%~dp0assets\pretrained\D40k.pth" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking D40k.pth +if exist "%~dp0assets\pretrained_v2\D40k.pth" ( + echo D40k.pth in .\assets\pretrained_v2 checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/D40k.pth -d %~dp0assets\pretrained_v2 -o D40k.pth + if exist "%~dp0assets\pretrained_v2\D40k.pth" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking D48k.pth +if exist "%~dp0assets\pretrained\D48k.pth" ( + echo D48k.pth in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/D48k.pth -d %~dp0assets\pretrained -o D48k.pth + if exist "%~dp0assets\pretrained\D48k.pth" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking G32k.pth +if exist "%~dp0assets\pretrained\G32k.pth" ( + echo G32k.pth in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/G32k.pth -d %~dp0assets\pretrained -o G32k.pth + if exist "%~dp0assets\pretrained\G32k.pth" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking G40k.pth +if exist "%~dp0assets\pretrained\G40k.pth" ( + echo G40k.pth in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/G40k.pth -d %~dp0assets\pretrained -o G40k.pth + if exist "%~dp0assets\pretrained\G40k.pth" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking G40k.pth +if exist "%~dp0assets\pretrained_v2\G40k.pth" ( + echo G40k.pth in .\assets\pretrained_v2 checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/G40k.pth -d %~dp0assets\pretrained_v2 -o G40k.pth + if exist "%~dp0assets\pretrained_v2\G40k.pth" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking G48k.pth +if exist "%~dp0assets\pretrained\G48k.pth" ( + echo G48k.pth in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/G48k.pth -d %~dp0assets\pretrained -o G48k.pth + if exist "%~dp0assets\pretrained\G48k.pth" (echo download successful.) else (echo please try again! + echo=) + ) + +echo checking %d32% +if exist "%~dp0assets\pretrained\%d32%" ( + echo %d32% in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dld32% -d %~dp0assets\pretrained -o %d32% + if exist "%~dp0assets\pretrained\%d32%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %d40% +if exist "%~dp0assets\pretrained\%d40%" ( + echo %d40% in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dld40% -d %~dp0assets\pretrained -o %d40% + if exist "%~dp0assets\pretrained\%d40%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %d40v2% +if exist "%~dp0assets\pretrained_v2\%d40v2%" ( + echo %d40v2% in .\assets\pretrained_v2 checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dld40v2% -d %~dp0assets\pretrained_v2 -o %d40v2% + if exist "%~dp0assets\pretrained_v2\%d40v2%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %d48% +if exist "%~dp0assets\pretrained\%d48%" ( + echo %d48% in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dld48% -d %~dp0assets\pretrained -o %d48% + if exist "%~dp0assets\pretrained\%d48%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %g32% +if exist "%~dp0assets\pretrained\%g32%" ( + echo %g32% in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlg32% -d %~dp0assets\pretrained -o %g32% + if exist "%~dp0assets\pretrained\%g32%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %g40% +if exist "%~dp0assets\pretrained\%g40%" ( + echo %g40% in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlg40% -d %~dp0assets\pretrained -o %g40% + if exist "%~dp0assets\pretrained\%g40%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %g40v2% +if exist "%~dp0assets\pretrained_v2\%g40v2%" ( + echo %g40v2% in .\assets\pretrained_v2 checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlg40v2% -d %~dp0assets\pretrained_v2 -o %g40v2% + if exist "%~dp0assets\pretrained_v2\%g40v2%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %g48% +if exist "%~dp0assets\pretrained\%g48%" ( + echo %g48% in .\assets\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlg48% -d %~dp0assets\pretrained -o %g48% + if exist "%~dp0assets\pretrained\%g48%" (echo download successful.) else (echo please try again! + echo=) + ) + +echo checking %hp2_all% +if exist "%~dp0assets\uvr5_weights\%hp2_all%" ( + echo %hp2_all% in .\assets\uvr5_weights checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlhp2_all% -d %~dp0assets\uvr5_weights -o %hp2_all% + if exist "%~dp0assets\uvr5_weights\%hp2_all%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %hp3_all% +if exist "%~dp0assets\uvr5_weights\%hp3_all%" ( + echo %hp3_all% in .\assets\uvr5_weights checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlhp3_all% -d %~dp0assets\uvr5_weights -o %hp3_all% + if exist "%~dp0assets\uvr5_weights\%hp3_all%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %hp5_only% +if exist "%~dp0assets\uvr5_weights\%hp5_only%" ( + echo %hp5_only% in .\assets\uvr5_weights checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlhp5_only% -d %~dp0assets\uvr5_weights -o %hp5_only% + if exist "%~dp0assets\uvr5_weights\%hp5_only%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %VR_DeEchoAggressive% +if exist "%~dp0assets\uvr5_weights\%VR_DeEchoAggressive%" ( + echo %VR_DeEchoAggressive% in .\assets\uvr5_weights checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlVR_DeEchoAggressive% -d %~dp0assets\uvr5_weights -o %VR_DeEchoAggressive% + if exist "%~dp0assets\uvr5_weights\%VR_DeEchoAggressive%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %VR_DeEchoDeReverb% +if exist "%~dp0assets\uvr5_weights\%VR_DeEchoDeReverb%" ( + echo %VR_DeEchoDeReverb% in .\assets\uvr5_weights checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlVR_DeEchoDeReverb% -d %~dp0assets\uvr5_weights -o %VR_DeEchoDeReverb% + if exist "%~dp0assets\uvr5_weights\%VR_DeEchoDeReverb%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %VR_DeEchoNormal% +if exist "%~dp0assets\uvr5_weights\%VR_DeEchoNormal%" ( + echo %VR_DeEchoNormal% in .\assets\uvr5_weights checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlVR_DeEchoNormal% -d %~dp0assets\uvr5_weights -o %VR_DeEchoNormal% + if exist "%~dp0assets\uvr5_weights\%VR_DeEchoNormal%" (echo download successful.) else (echo please try again! + echo=) + ) +echo checking %onnx_dereverb% +if exist "%~dp0assets\uvr5_weights\onnx_dereverb_By_FoxJoy\%onnx_dereverb%" ( + echo %onnx_dereverb% in .\assets\uvr5_weights\onnx_dereverb_By_FoxJoy checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlonnx_dereverb% -d %~dp0assets\uvr5_weights\onnx_dereverb_By_FoxJoy -o %onnx_dereverb% + if exist "%~dp0assets\uvr5_weights\onnx_dereverb_By_FoxJoy\%onnx_dereverb%" (echo download successful.) else (echo please try again! + echo=) + ) + +echo checking %hb% +if exist "%~dp0assets\hubert\%hb%" ( + echo %hb% in .\assets\hubert\pretrained checked. + echo= + ) else ( + echo failed. starting download from huggingface. + %~dp0%aria2%\aria2c --console-log-level=error -c -x 16 -s 16 -k 1M %dlhb% -d %~dp0assets\hubert\ -o %hb% + if exist "%~dp0assets\hubert\%hb%" (echo download successful.) else (echo please try again! + echo=) + ) + +echo required files check finished. +echo envfiles check complete. +pause +:end +del flag.txt diff --git a/voice_conversion/rvc-v2-brandon/tools/dlmodels.sh b/voice_conversion/rvc-v2-brandon/tools/dlmodels.sh new file mode 100644 index 0000000..62f55d9 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/dlmodels.sh @@ -0,0 +1,566 @@ +#!/bin/bash + +echo working dir is $(pwd) +echo downloading requirement aria2 check. + +if command -v aria2c &> /dev/null +then + echo "aria2c command found" +else + echo failed. please install aria2 + sleep 5 + exit 1 +fi + +d32="f0D32k.pth" +d40="f0D40k.pth" +d48="f0D48k.pth" +g32="f0G32k.pth" +g40="f0G40k.pth" +g48="f0G48k.pth" + +d40v2="f0D40k.pth" +g40v2="f0G40k.pth" + +dld32="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0D32k.pth" +dld40="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0D40k.pth" +dld48="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0D48k.pth" +dlg32="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0G32k.pth" +dlg40="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0G40k.pth" +dlg48="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/f0G48k.pth" + +dld40v2="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/f0D40k.pth" +dlg40v2="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/f0G40k.pth" + +hp2_all="HP2_all_vocals.pth" +hp3_all="HP3_all_vocals.pth" +hp5_only="HP5_only_main_vocal.pth" +VR_DeEchoAggressive="VR-DeEchoAggressive.pth" +VR_DeEchoDeReverb="VR-DeEchoDeReverb.pth" +VR_DeEchoNormal="VR-DeEchoNormal.pth" +onnx_dereverb="vocals.onnx" +rmvpe="rmvpe.pt" + +dlhp2_all="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP2_all_vocals.pth" +dlhp3_all="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP3_all_vocals.pth" +dlhp5_only="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP5_only_main_vocal.pth" +dlVR_DeEchoAggressive="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/VR-DeEchoAggressive.pth" +dlVR_DeEchoDeReverb="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/VR-DeEchoDeReverb.pth" +dlVR_DeEchoNormal="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/VR-DeEchoNormal.pth" +dlonnx_dereverb="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/onnx_dereverb_By_FoxJoy/vocals.onnx" +dlrmvpe="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/rmvpe.pt" + +hb="hubert_base.pt" + +dlhb="https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/hubert_base.pt" + +echo dir check start. + +if [ -d "./assets/pretrained" ]; then + echo dir ./assets/pretrained checked. +else + echo failed. generating dir ./assets/pretrained. + mkdir pretrained +fi + +if [ -d "./assets/pretrained_v2" ]; then + echo dir ./assets/pretrained_v2 checked. +else + echo failed. generating dir ./assets/pretrained_v2. + mkdir pretrained_v2 +fi + +if [ -d "./assets/uvr5_weights" ]; then + echo dir ./assets/uvr5_weights checked. +else + echo failed. generating dir ./assets/uvr5_weights. + mkdir uvr5_weights +fi + +if [ -d "./assets/uvr5_weights/onnx_dereverb_By_FoxJoy" ]; then + echo dir ./assets/uvr5_weights/onnx_dereverb_By_FoxJoy checked. +else + echo failed. generating dir ./assets/uvr5_weights/onnx_dereverb_By_FoxJoy. + mkdir uvr5_weights/onnx_dereverb_By_FoxJoy +fi + +echo dir check finished. + +echo required files check start. + +echo checking D32k.pth +if [ -f "./assets/pretrained/D32k.pth" ]; then + echo D32k.pth in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/D32k.pth -d ./assets/pretrained -o D32k.pth + if [ -f "./assets/pretrained/D32k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking D40k.pth +if [ -f "./assets/pretrained/D40k.pth" ]; then + echo D40k.pth in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/D40k.pth -d ./assets/pretrained -o D40k.pth + if [ -f "./assets/pretrained/D40k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking D40k.pth +if [ -f "./assets/pretrained_v2/D40k.pth" ]; then + echo D40k.pth in ./assets/pretrained_v2 checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/D40k.pth -d ./assets/pretrained_v2 -o D40k.pth + if [ -f "./assets/pretrained_v2/D40k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking D48k.pth +if [ -f "./assets/pretrained/D48k.pth" ]; then + echo D48k.pth in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/D48k.pth -d ./assets/pretrained -o D48k.pth + if [ -f "./assets/pretrained/D48k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking G32k.pth +if [ -f "./assets/pretrained/G32k.pth" ]; then + echo G32k.pth in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/G32k.pth -d ./assets/pretrained -o G32k.pth + if [ -f "./assets/pretrained/G32k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking G40k.pth +if [ -f "./assets/pretrained/G40k.pth" ]; then + echo G40k.pth in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/G40k.pth -d ./assets/pretrained -o G40k.pth + if [ -f "./assets/pretrained/G40k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking G40k.pth +if [ -f "./assets/pretrained_v2/G40k.pth" ]; then + echo G40k.pth in ./assets/pretrained_v2 checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/G40k.pth -d ./assets/pretrained_v2 -o G40k.pth + if [ -f "./assets/pretrained_v2/G40k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking G48k.pth +if [ -f "./assets/pretrained/G48k.pth" ]; then + echo G48k.pth in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained/G48k.pth -d ./assets/pretrained -o G48k.pth + if [ -f "./assets/pretrained/G48k.pth" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $d32 +if [ -f "./assets/pretrained/$d32" ]; then + echo $d32 in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dld32 -d ./assets/pretrained -o $d32 + if [ -f "./assets/pretrained/$d32" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $d40 +if [ -f "./assets/pretrained/$d40" ]; then + echo $d40 in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dld40 -d ./assets/pretrained -o $d40 + if [ -f "./assets/pretrained/$d40" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $d40v2 +if [ -f "./assets/pretrained_v2/$d40v2" ]; then + echo $d40v2 in ./assets/pretrained_v2 checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dld40v2 -d ./assets/pretrained_v2 -o $d40v2 + if [ -f "./assets/pretrained_v2/$d40v2" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $d48 +if [ -f "./assets/pretrained/$d48" ]; then + echo $d48 in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dld48 -d ./assets/pretrained -o $d48 + if [ -f "./assets/pretrained/$d48" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $g32 +if [ -f "./assets/pretrained/$g32" ]; then + echo $g32 in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlg32 -d ./assets/pretrained -o $g32 + if [ -f "./assets/pretrained/$g32" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $g40 +if [ -f "./assets/pretrained/$g40" ]; then + echo $g40 in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlg40 -d ./assets/pretrained -o $g40 + if [ -f "./assets/pretrained/$g40" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $g40v2 +if [ -f "./assets/pretrained_v2/$g40v2" ]; then + echo $g40v2 in ./assets/pretrained_v2 checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlg40v2 -d ./assets/pretrained_v2 -o $g40v2 + if [ -f "./assets/pretrained_v2/$g40v2" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $g48 +if [ -f "./assets/pretrained/$g48" ]; then + echo $g48 in ./assets/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlg48 -d ./assets/pretrained -o $g48 + if [ -f "./assets/pretrained/$g48" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $hp2_all +if [ -f "./assets/uvr5_weights/$hp2_all" ]; then + echo $hp2_all in ./assets/uvr5_weights checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlhp2_all -d ./assets/uvr5_weights -o $hp2_all + if [ -f "./assets/uvr5_weights/$hp2_all" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $hp3_all +if [ -f "./assets/uvr5_weights/$hp3_all" ]; then + echo $hp3_all in ./assets/uvr5_weights checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlhp3_all -d ./assets/uvr5_weights -o $hp3_all + if [ -f "./assets/uvr5_weights/$hp3_all" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $hp5_only +if [ -f "./assets/uvr5_weights/$hp5_only" ]; then + echo $hp5_only in ./assets/uvr5_weights checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlhp5_only -d ./assets/uvr5_weights -o $hp5_only + if [ -f "./assets/uvr5_weights/$hp5_only" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $VR_DeEchoAggressive +if [ -f "./assets/uvr5_weights/$VR_DeEchoAggressive" ]; then + echo $VR_DeEchoAggressive in ./assets/uvr5_weights checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlVR_DeEchoAggressive -d ./assets/uvr5_weights -o $VR_DeEchoAggressive + if [ -f "./assets/uvr5_weights/$VR_DeEchoAggressive" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $VR_DeEchoDeReverb +if [ -f "./assets/uvr5_weights/$VR_DeEchoDeReverb" ]; then + echo $VR_DeEchoDeReverb in ./assets/uvr5_weights checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlVR_DeEchoDeReverb -d ./assets/uvr5_weights -o $VR_DeEchoDeReverb + if [ -f "./assets/uvr5_weights/$VR_DeEchoDeReverb" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $VR_DeEchoNormal +if [ -f "./assets/uvr5_weights/$VR_DeEchoNormal" ]; then + echo $VR_DeEchoNormal in ./assets/uvr5_weights checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlVR_DeEchoNormal -d ./assets/uvr5_weights -o $VR_DeEchoNormal + if [ -f "./assets/uvr5_weights/$VR_DeEchoNormal" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $onnx_dereverb +if [ -f "./assets/uvr5_weights/onnx_dereverb_By_FoxJoy/$onnx_dereverb" ]; then + echo $onnx_dereverb in ./assets/uvr5_weights/onnx_dereverb_By_FoxJoy checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlonnx_dereverb -d ./assets/uvr5_weights/onnx_dereverb_By_FoxJoy -o $onnx_dereverb + if [ -f "./assets/uvr5_weights/onnx_dereverb_By_FoxJoy/$onnx_dereverb" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $rmvpe +if [ -f "./assets/rmvpe/$rmvpe" ]; then + echo $rmvpe in ./assets/rmvpe checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlrmvpe -d ./assets/rmvpe -o $rmvpe + if [ -f "./assets/rmvpe/$rmvpe" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo checking $hb +if [ -f "./assets/hubert/$hb" ]; then + echo $hb in ./assets/hubert/pretrained checked. +else + echo failed. starting download from huggingface. + if command -v aria2c &> /dev/null; then + aria2c --console-log-level=error -c -x 16 -s 16 -k 1M $dlhb -d ./assets/hubert/ -o $hb + if [ -f "./assets/hubert/$hb" ]; then + echo download successful. + else + echo please try again! + exit 1 + fi + else + echo aria2c command not found. Please install aria2c and try again. + exit 1 + fi +fi + +echo required files check finished. diff --git a/voice_conversion/rvc-v2-brandon/tools/export_onnx.py b/voice_conversion/rvc-v2-brandon/tools/export_onnx.py new file mode 100644 index 0000000..822e09e --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/export_onnx.py @@ -0,0 +1,54 @@ +import torch +from infer.lib.infer_pack.models_onnx import SynthesizerTrnMsNSFsidM + +if __name__ == "__main__": + MoeVS = True # 模型是否为MoeVoiceStudio(原MoeSS)使用 + + ModelPath = "Shiroha/shiroha.pth" # 模型路径 + ExportedPath = "model.onnx" # 输出路径 + hidden_channels = 256 # hidden_channels,为768Vec做准备 + cpt = torch.load(ModelPath, map_location="cpu") + cpt["config"][-3] = cpt["weight"]["emb_g.weight"].shape[0] # n_spk + print(*cpt["config"]) + + test_phone = torch.rand(1, 200, hidden_channels) # hidden unit + test_phone_lengths = torch.tensor([200]).long() # hidden unit 长度(貌似没啥用) + test_pitch = torch.randint(size=(1, 200), low=5, high=255) # 基频(单位赫兹) + test_pitchf = torch.rand(1, 200) # nsf基频 + test_ds = torch.LongTensor([0]) # 说话人ID + test_rnd = torch.rand(1, 192, 200) # 噪声(加入随机因子) + + device = "cpu" # 导出时设备(不影响使用模型) + + net_g = SynthesizerTrnMsNSFsidM( + *cpt["config"], is_half=False + ) # fp32导出(C++要支持fp16必须手动将内存重新排列所以暂时不用fp16) + net_g.load_state_dict(cpt["weight"], strict=False) + input_names = ["phone", "phone_lengths", "pitch", "pitchf", "ds", "rnd"] + output_names = [ + "audio", + ] + # net_g.construct_spkmixmap(n_speaker) 多角色混合轨道导出 + torch.onnx.export( + net_g, + ( + test_phone.to(device), + test_phone_lengths.to(device), + test_pitch.to(device), + test_pitchf.to(device), + test_ds.to(device), + test_rnd.to(device), + ), + ExportedPath, + dynamic_axes={ + "phone": [1], + "pitch": [1], + "pitchf": [1], + "rnd": [2], + }, + do_constant_folding=False, + opset_version=16, + verbose=False, + input_names=input_names, + output_names=output_names, + ) diff --git a/voice_conversion/rvc-v2-brandon/tools/infer/infer-pm-index256.py b/voice_conversion/rvc-v2-brandon/tools/infer/infer-pm-index256.py new file mode 100644 index 0000000..bf92d1d --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/infer/infer-pm-index256.py @@ -0,0 +1,202 @@ +""" + +对源特征进行检索 +""" +import os +import logging + +logger = logging.getLogger(__name__) + +import parselmouth +import torch + +os.environ["CUDA_VISIBLE_DEVICES"] = "0" +# import torchcrepe +from time import time as ttime + +# import pyworld +import librosa +import numpy as np +import soundfile as sf +import torch.nn.functional as F +from fairseq import checkpoint_utils + +# from models import SynthesizerTrn256#hifigan_nonsf +# from lib.infer_pack.models import SynthesizerTrn256NSF as SynthesizerTrn256#hifigan_nsf +from infer.lib.infer_pack.models import ( + SynthesizerTrnMs256NSFsid as SynthesizerTrn256, +) # hifigan_nsf +from scipy.io import wavfile + +# from lib.infer_pack.models import SynthesizerTrnMs256NSFsid_sim as SynthesizerTrn256#hifigan_nsf +# from models import SynthesizerTrn256NSFsim as SynthesizerTrn256#hifigan_nsf +# from models import SynthesizerTrn256NSFsimFlow as SynthesizerTrn256#hifigan_nsf + + +device = torch.device("cuda" if torch.cuda.is_available() else "cpu") +model_path = r"E:\codes\py39\vits_vc_gpu_train\assets\hubert\hubert_base.pt" # +logger.info("Load model(s) from {}".format(model_path)) +models, saved_cfg, task = checkpoint_utils.load_model_ensemble_and_task( + [model_path], + suffix="", +) +model = models[0] +model = model.to(device) +model = model.half() +model.eval() + +# net_g = SynthesizerTrn256(1025,32,192,192,768,2,6,3,0.1,"1", [3,7,11],[[1,3,5], [1,3,5], [1,3,5]],[10,10,2,2],512,[16,16,4,4],183,256,is_half=True)#hifigan#512#256 +# net_g = SynthesizerTrn256(1025,32,192,192,768,2,6,3,0.1,"1", [3,7,11],[[1,3,5], [1,3,5], [1,3,5]],[10,10,2,2],512,[16,16,4,4],109,256,is_half=True)#hifigan#512#256 +net_g = SynthesizerTrn256( + 1025, + 32, + 192, + 192, + 768, + 2, + 6, + 3, + 0, + "1", + [3, 7, 11], + [[1, 3, 5], [1, 3, 5], [1, 3, 5]], + [10, 10, 2, 2], + 512, + [16, 16, 4, 4], + 183, + 256, + is_half=True, +) # hifigan#512#256#no_dropout +# net_g = SynthesizerTrn256(1025,32,192,192,768,2,3,3,0.1,"1", [3,7,11],[[1,3,5], [1,3,5], [1,3,5]],[10,10,2,2],512,[16,16,4,4],0)#ts3 +# net_g = SynthesizerTrn256(1025,32,192,192,768,2,6,3,0.1,"1", [3,7,11],[[1,3,5], [1,3,5], [1,3,5]],[10,10,2],512,[16,16,4],0)#hifigan-ps-sr +# +# net_g = SynthesizerTrn(1025, 32, 192, 192, 768, 2, 6, 3, 0.1, "1", [3, 7, 11], [[1, 3, 5], [1, 3, 5], [1, 3, 5]], [5,5], 512, [15,15], 0)#ms +# net_g = SynthesizerTrn(1025, 32, 192, 192, 768, 2, 6, 3, 0.1, "1", [3, 7, 11], [[1, 3, 5], [1, 3, 5], [1, 3, 5]], [10,10], 512, [16,16], 0)#idwt2 + +# weights=torch.load("infer/ft-mi_1k-noD.pt") +# weights=torch.load("infer/ft-mi-freeze-vocoder-flow-enc_q_1k.pt") +# weights=torch.load("infer/ft-mi-freeze-vocoder_true_1k.pt") +# weights=torch.load("infer/ft-mi-sim1k.pt") +weights = torch.load("infer/ft-mi-no_opt-no_dropout.pt") +logger.debug(net_g.load_state_dict(weights, strict=True)) + +net_g.eval().to(device) +net_g.half() + + +def get_f0(x, p_len, f0_up_key=0): + time_step = 160 / 16000 * 1000 + f0_min = 50 + f0_max = 1100 + f0_mel_min = 1127 * np.log(1 + f0_min / 700) + f0_mel_max = 1127 * np.log(1 + f0_max / 700) + + f0 = ( + parselmouth.Sound(x, 16000) + .to_pitch_ac( + time_step=time_step / 1000, + voicing_threshold=0.6, + pitch_floor=f0_min, + pitch_ceiling=f0_max, + ) + .selected_array["frequency"] + ) + + pad_size = (p_len - len(f0) + 1) // 2 + if pad_size > 0 or p_len - len(f0) - pad_size > 0: + f0 = np.pad(f0, [[pad_size, p_len - len(f0) - pad_size]], mode="constant") + f0 *= pow(2, f0_up_key / 12) + f0bak = f0.copy() + + f0_mel = 1127 * np.log(1 + f0 / 700) + f0_mel[f0_mel > 0] = (f0_mel[f0_mel > 0] - f0_mel_min) * 254 / ( + f0_mel_max - f0_mel_min + ) + 1 + f0_mel[f0_mel <= 1] = 1 + f0_mel[f0_mel > 255] = 255 + # f0_mel[f0_mel > 188] = 188 + f0_coarse = np.rint(f0_mel).astype(np.int32) + return f0_coarse, f0bak + + +import faiss + +index = faiss.read_index("infer/added_IVF512_Flat_mi_baseline_src_feat.index") +big_npy = np.load("infer/big_src_feature_mi.npy") +ta0 = ta1 = ta2 = 0 +for idx, name in enumerate( + [ + "冬之花clip1.wav", + ] +): ## + wav_path = "todo-songs/%s" % name # + f0_up_key = -2 # + audio, sampling_rate = sf.read(wav_path) + if len(audio.shape) > 1: + audio = librosa.to_mono(audio.transpose(1, 0)) + if sampling_rate != 16000: + audio = librosa.resample(audio, orig_sr=sampling_rate, target_sr=16000) + + feats = torch.from_numpy(audio).float() + if feats.dim() == 2: # double channels + feats = feats.mean(-1) + assert feats.dim() == 1, feats.dim() + feats = feats.view(1, -1) + padding_mask = torch.BoolTensor(feats.shape).fill_(False) + inputs = { + "source": feats.half().to(device), + "padding_mask": padding_mask.to(device), + "output_layer": 9, # layer 9 + } + if torch.cuda.is_available(): + torch.cuda.synchronize() + t0 = ttime() + with torch.no_grad(): + logits = model.extract_features(**inputs) + feats = model.final_proj(logits[0]) + + ####索引优化 + npy = feats[0].cpu().numpy().astype("float32") + D, I = index.search(npy, 1) + feats = ( + torch.from_numpy(big_npy[I.squeeze()].astype("float16")).unsqueeze(0).to(device) + ) + + feats = F.interpolate(feats.permute(0, 2, 1), scale_factor=2).permute(0, 2, 1) + if torch.cuda.is_available(): + torch.cuda.synchronize() + t1 = ttime() + # p_len = min(feats.shape[1],10000,pitch.shape[0])#太大了爆显存 + p_len = min(feats.shape[1], 10000) # + pitch, pitchf = get_f0(audio, p_len, f0_up_key) + p_len = min(feats.shape[1], 10000, pitch.shape[0]) # 太大了爆显存 + if torch.cuda.is_available(): + torch.cuda.synchronize() + t2 = ttime() + feats = feats[:, :p_len, :] + pitch = pitch[:p_len] + pitchf = pitchf[:p_len] + p_len = torch.LongTensor([p_len]).to(device) + pitch = torch.LongTensor(pitch).unsqueeze(0).to(device) + sid = torch.LongTensor([0]).to(device) + pitchf = torch.FloatTensor(pitchf).unsqueeze(0).to(device) + with torch.no_grad(): + audio = ( + net_g.infer(feats, p_len, pitch, pitchf, sid)[0][0, 0] + .data.cpu() + .float() + .numpy() + ) # nsf + if torch.cuda.is_available(): + torch.cuda.synchronize() + t3 = ttime() + ta0 += t1 - t0 + ta1 += t2 - t1 + ta2 += t3 - t2 + # wavfile.write("ft-mi_1k-index256-noD-%s.wav"%name, 40000, audio)## + # wavfile.write("ft-mi-freeze-vocoder-flow-enc_q_1k-%s.wav"%name, 40000, audio)## + # wavfile.write("ft-mi-sim1k-%s.wav"%name, 40000, audio)## + wavfile.write("ft-mi-no_opt-no_dropout-%s.wav" % name, 40000, audio) ## + + +logger.debug("%.2fs %.2fs %.2fs", ta0, ta1, ta2) # diff --git a/voice_conversion/rvc-v2-brandon/tools/infer/train-index-v2.py b/voice_conversion/rvc-v2-brandon/tools/infer/train-index-v2.py new file mode 100644 index 0000000..0efef7c --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/infer/train-index-v2.py @@ -0,0 +1,79 @@ +""" +格式:直接cid为自带的index位;aid放不下了,通过字典来查,反正就5w个 +""" +import os +import traceback +import logging + +logger = logging.getLogger(__name__) + +from multiprocessing import cpu_count + +import faiss +import numpy as np +from sklearn.cluster import MiniBatchKMeans + +# ###########如果是原始特征要先写save +n_cpu = 0 +if n_cpu == 0: + n_cpu = cpu_count() +inp_root = r"./logs/anz/3_feature768" +npys = [] +listdir_res = list(os.listdir(inp_root)) +for name in sorted(listdir_res): + phone = np.load("%s/%s" % (inp_root, name)) + npys.append(phone) +big_npy = np.concatenate(npys, 0) +big_npy_idx = np.arange(big_npy.shape[0]) +np.random.shuffle(big_npy_idx) +big_npy = big_npy[big_npy_idx] +logger.debug(big_npy.shape) # (6196072, 192)#fp32#4.43G +if big_npy.shape[0] > 2e5: + # if(1): + info = "Trying doing kmeans %s shape to 10k centers." % big_npy.shape[0] + logger.info(info) + try: + big_npy = ( + MiniBatchKMeans( + n_clusters=10000, + verbose=True, + batch_size=256 * n_cpu, + compute_labels=False, + init="random", + ) + .fit(big_npy) + .cluster_centers_ + ) + except: + info = traceback.format_exc() + logger.warn(info) + +np.save("tools/infer/big_src_feature_mi.npy", big_npy) + +##################train+add +# big_npy=np.load("/bili-coeus/jupyter/jupyterhub-liujing04/vits_ch/inference_f0/big_src_feature_mi.npy") +n_ivf = min(int(16 * np.sqrt(big_npy.shape[0])), big_npy.shape[0] // 39) +index = faiss.index_factory(768, "IVF%s,Flat" % n_ivf) # mi +logger.info("Training...") +index_ivf = faiss.extract_index_ivf(index) # +index_ivf.nprobe = 1 +index.train(big_npy) +faiss.write_index( + index, "tools/infer/trained_IVF%s_Flat_baseline_src_feat_v2.index" % (n_ivf) +) +logger.info("Adding...") +batch_size_add = 8192 +for i in range(0, big_npy.shape[0], batch_size_add): + index.add(big_npy[i : i + batch_size_add]) +faiss.write_index( + index, "tools/infer/added_IVF%s_Flat_mi_baseline_src_feat.index" % (n_ivf) +) +""" +大小(都是FP32) +big_src_feature 2.95G + (3098036, 256) +big_emb 4.43G + (6196072, 192) +big_emb双倍是因为求特征要repeat后再加pitch + +""" diff --git a/voice_conversion/rvc-v2-brandon/tools/infer/train-index.py b/voice_conversion/rvc-v2-brandon/tools/infer/train-index.py new file mode 100644 index 0000000..39d64c4 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/infer/train-index.py @@ -0,0 +1,42 @@ +""" +格式:直接cid为自带的index位;aid放不下了,通过字典来查,反正就5w个 +""" +import os +import logging + +logger = logging.getLogger(__name__) + +import faiss +import numpy as np + +# ###########如果是原始特征要先写save +inp_root = r"E:\codes\py39\dataset\mi\2-co256" +npys = [] +for name in sorted(list(os.listdir(inp_root))): + phone = np.load("%s/%s" % (inp_root, name)) + npys.append(phone) +big_npy = np.concatenate(npys, 0) +logger.debug(big_npy.shape) # (6196072, 192)#fp32#4.43G +np.save("infer/big_src_feature_mi.npy", big_npy) + +##################train+add +# big_npy=np.load("/bili-coeus/jupyter/jupyterhub-liujing04/vits_ch/inference_f0/big_src_feature_mi.npy") +logger.debug(big_npy.shape) +index = faiss.index_factory(256, "IVF512,Flat") # mi +logger.info("Training...") +index_ivf = faiss.extract_index_ivf(index) # +index_ivf.nprobe = 9 +index.train(big_npy) +faiss.write_index(index, "infer/trained_IVF512_Flat_mi_baseline_src_feat.index") +logger.info("Adding...") +index.add(big_npy) +faiss.write_index(index, "infer/added_IVF512_Flat_mi_baseline_src_feat.index") +""" +大小(都是FP32) +big_src_feature 2.95G + (3098036, 256) +big_emb 4.43G + (6196072, 192) +big_emb双倍是因为求特征要repeat后再加pitch + +""" diff --git a/voice_conversion/rvc-v2-brandon/tools/infer/trans_weights.py b/voice_conversion/rvc-v2-brandon/tools/infer/trans_weights.py new file mode 100644 index 0000000..a8ff3b0 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/infer/trans_weights.py @@ -0,0 +1,18 @@ +import pdb + +import torch + +# a=torch.load(r"E:\codes\py39\vits_vc_gpu_train\logs\ft-mi-suc\G_1000.pth")["model"]#sim_nsf# +# a=torch.load(r"E:\codes\py39\vits_vc_gpu_train\logs\ft-mi-freeze-vocoder-flow-enc_q\G_1000.pth")["model"]#sim_nsf# +# a=torch.load(r"E:\codes\py39\vits_vc_gpu_train\logs\ft-mi-freeze-vocoder\G_1000.pth")["model"]#sim_nsf# +# a=torch.load(r"E:\codes\py39\vits_vc_gpu_train\logs\ft-mi-test\G_1000.pth")["model"]#sim_nsf# +a = torch.load( + r"E:\codes\py39\vits_vc_gpu_train\logs\ft-mi-no_opt-no_dropout\G_1000.pth" +)[ + "model" +] # sim_nsf# +for key in a.keys(): + a[key] = a[key].half() +# torch.save(a,"ft-mi-freeze-vocoder_true_1k.pt")# +# torch.save(a,"ft-mi-sim1k.pt")# +torch.save(a, "ft-mi-no_opt-no_dropout.pt") # diff --git a/voice_conversion/rvc-v2-brandon/tools/infer_batch_rvc.py b/voice_conversion/rvc-v2-brandon/tools/infer_batch_rvc.py new file mode 100644 index 0000000..5425b92 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/infer_batch_rvc.py @@ -0,0 +1,72 @@ +import argparse +import os +import sys + +print("Command-line arguments:", sys.argv) + +now_dir = os.getcwd() +sys.path.append(now_dir) +import sys + +import tqdm as tq +from dotenv import load_dotenv +from scipy.io import wavfile + +from configs.config import Config +from infer.modules.vc.modules import VC + + +def arg_parse() -> tuple: + parser = argparse.ArgumentParser() + parser.add_argument("--f0up_key", type=int, default=0) + parser.add_argument("--input_path", type=str, help="input path") + parser.add_argument("--index_path", type=str, help="index path") + parser.add_argument("--f0method", type=str, default="harvest", help="harvest or pm") + parser.add_argument("--opt_path", type=str, help="opt path") + parser.add_argument("--model_name", type=str, help="store in assets/weight_root") + parser.add_argument("--index_rate", type=float, default=0.66, help="index rate") + parser.add_argument("--device", type=str, help="device") + parser.add_argument("--is_half", type=bool, help="use half -> True") + parser.add_argument("--filter_radius", type=int, default=3, help="filter radius") + parser.add_argument("--resample_sr", type=int, default=0, help="resample sr") + parser.add_argument("--rms_mix_rate", type=float, default=1, help="rms mix rate") + parser.add_argument("--protect", type=float, default=0.33, help="protect") + + args = parser.parse_args() + sys.argv = sys.argv[:1] + + return args + + +def main(): + load_dotenv() + args = arg_parse() + config = Config() + config.device = args.device if args.device else config.device + config.is_half = args.is_half if args.is_half else config.is_half + vc = VC(config) + vc.get_vc(args.model_name) + audios = os.listdir(args.input_path) + for file in tq.tqdm(audios): + if file.endswith(".wav"): + file_path = os.path.join(args.input_path, file) + _, wav_opt = vc.vc_single( + 0, + file_path, + args.f0up_key, + None, + args.f0method, + args.index_path, + None, + args.index_rate, + args.filter_radius, + args.resample_sr, + args.rms_mix_rate, + args.protect, + ) + out_path = os.path.join(args.opt_path, file) + wavfile.write(out_path, wav_opt[0], wav_opt[1]) + + +if __name__ == "__main__": + main() diff --git a/voice_conversion/rvc-v2-brandon/tools/infer_cli.py b/voice_conversion/rvc-v2-brandon/tools/infer_cli.py new file mode 100644 index 0000000..a774940 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/infer_cli.py @@ -0,0 +1,67 @@ +import argparse +import os +import sys + +now_dir = os.getcwd() +sys.path.append(now_dir) +from dotenv import load_dotenv +from scipy.io import wavfile + +from configs.config import Config +from infer.modules.vc.modules import VC + +#### +# USAGE +# +# In your Terminal or CMD or whatever + + +def arg_parse() -> tuple: + parser = argparse.ArgumentParser() + parser.add_argument("--f0up_key", type=int, default=0) + parser.add_argument("--input_path", type=str, help="input path") + parser.add_argument("--index_path", type=str, help="index path") + parser.add_argument("--f0method", type=str, default="harvest", help="harvest or pm") + parser.add_argument("--opt_path", type=str, help="opt path") + parser.add_argument("--model_name", type=str, help="store in assets/weight_root") + parser.add_argument("--index_rate", type=float, default=0.66, help="index rate") + parser.add_argument("--device", type=str, help="device") + parser.add_argument("--is_half", type=bool, help="use half -> True") + parser.add_argument("--filter_radius", type=int, default=3, help="filter radius") + parser.add_argument("--resample_sr", type=int, default=0, help="resample sr") + parser.add_argument("--rms_mix_rate", type=float, default=1, help="rms mix rate") + parser.add_argument("--protect", type=float, default=0.33, help="protect") + + args = parser.parse_args() + sys.argv = sys.argv[:1] + + return args + + +def main(): + load_dotenv() + args = arg_parse() + config = Config() + config.device = args.device if args.device else config.device + config.is_half = args.is_half if args.is_half else config.is_half + vc = VC(config) + vc.get_vc(args.model_name) + _, wav_opt = vc.vc_single( + 0, + args.input_path, + args.f0up_key, + None, + args.f0method, + args.index_path, + None, + args.index_rate, + args.filter_radius, + args.resample_sr, + args.rms_mix_rate, + args.protect, + ) + wavfile.write(args.opt_path, wav_opt[0], wav_opt[1]) + + +if __name__ == "__main__": + main() diff --git a/voice_conversion/rvc-v2-brandon/tools/onnx_inference_demo.py b/voice_conversion/rvc-v2-brandon/tools/onnx_inference_demo.py new file mode 100644 index 0000000..bd9ef1c --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/onnx_inference_demo.py @@ -0,0 +1,21 @@ +import soundfile + +from ..infer.lib.infer_pack.onnx_inference import OnnxRVC + +hop_size = 512 +sampling_rate = 40000 # 采样率 +f0_up_key = 0 # 升降调 +sid = 0 # 角色ID +f0_method = "dio" # F0提取算法 +model_path = "ShirohaRVC.onnx" # 模型的完整路径 +vec_name = "vec-256-layer-9" # 内部自动补齐为 f"pretrained/{vec_name}.onnx" 需要onnx的vec模型 +wav_path = "123.wav" # 输入路径或ByteIO实例 +out_path = "out.wav" # 输出路径或ByteIO实例 + +model = OnnxRVC( + model_path, vec_path=vec_name, sr=sampling_rate, hop_size=hop_size, device="cuda" +) + +audio = model.inference(wav_path, sid, f0_method=f0_method, f0_up_key=f0_up_key) + +soundfile.write(out_path, audio, sampling_rate) diff --git a/voice_conversion/rvc-v2-brandon/tools/rvc_for_realtime.py b/voice_conversion/rvc-v2-brandon/tools/rvc_for_realtime.py new file mode 100644 index 0000000..8d43ce1 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/rvc_for_realtime.py @@ -0,0 +1,375 @@ +import os +import sys +import traceback +import logging + +logger = logging.getLogger(__name__) + +from time import time as ttime + +import fairseq +import faiss +import numpy as np +import parselmouth +import pyworld +import scipy.signal as signal +import torch +import torch.nn as nn +import torch.nn.functional as F +import torchcrepe + +from infer.lib.infer_pack.models import ( + SynthesizerTrnMs256NSFsid, + SynthesizerTrnMs256NSFsid_nono, + SynthesizerTrnMs768NSFsid, + SynthesizerTrnMs768NSFsid_nono, +) + +now_dir = os.getcwd() +sys.path.append(now_dir) +from multiprocessing import Manager as M + +from configs.config import Config + +config = Config() + +mm = M() +if config.dml == True: + + def forward_dml(ctx, x, scale): + ctx.scale = scale + res = x.clone().detach() + return res + + fairseq.modules.grad_multiply.GradMultiply.forward = forward_dml + + +# config.device=torch.device("cpu")########强制cpu测试 +# config.is_half=False########强制cpu测试 +class RVC: + def __init__( + self, + key, + pth_path, + index_path, + index_rate, + n_cpu, + inp_q, + opt_q, + device, + last_rvc=None, + ) -> None: + """ + 初始化 + """ + try: + global config + self.inp_q = inp_q + self.opt_q = opt_q + # device="cpu"########强制cpu测试 + self.device = device + self.f0_up_key = key + self.time_step = 160 / 16000 * 1000 + self.f0_min = 50 + self.f0_max = 1100 + self.f0_mel_min = 1127 * np.log(1 + self.f0_min / 700) + self.f0_mel_max = 1127 * np.log(1 + self.f0_max / 700) + self.sr = 16000 + self.window = 160 + self.n_cpu = n_cpu + if index_rate != 0: + self.index = faiss.read_index(index_path) + self.big_npy = self.index.reconstruct_n(0, self.index.ntotal) + logger.info("Index search enabled") + self.pth_path = pth_path + self.index_path = index_path + self.index_rate = index_rate + + if last_rvc is None: + models, _, _ = fairseq.checkpoint_utils.load_model_ensemble_and_task( + ["assets/hubert/hubert_base.pt"], + suffix="", + ) + hubert_model = models[0] + hubert_model = hubert_model.to(device) + if config.is_half: + hubert_model = hubert_model.half() + else: + hubert_model = hubert_model.float() + hubert_model.eval() + self.model = hubert_model + else: + self.model = last_rvc.model + + if last_rvc is None or last_rvc.pth_path != self.pth_path: + cpt = torch.load(self.pth_path, map_location="cpu") + self.tgt_sr = cpt["config"][-1] + cpt["config"][-3] = cpt["weight"]["emb_g.weight"].shape[0] + self.if_f0 = cpt.get("f0", 1) + self.version = cpt.get("version", "v1") + if self.version == "v1": + if self.if_f0 == 1: + self.net_g = SynthesizerTrnMs256NSFsid( + *cpt["config"], is_half=config.is_half + ) + else: + self.net_g = SynthesizerTrnMs256NSFsid_nono(*cpt["config"]) + elif self.version == "v2": + if self.if_f0 == 1: + self.net_g = SynthesizerTrnMs768NSFsid( + *cpt["config"], is_half=config.is_half + ) + else: + self.net_g = SynthesizerTrnMs768NSFsid_nono(*cpt["config"]) + del self.net_g.enc_q + logger.debug(self.net_g.load_state_dict(cpt["weight"], strict=False)) + self.net_g.eval().to(device) + # print(2333333333,device,config.device,self.device)#net_g是device,hubert是config.device + if config.is_half: + self.net_g = self.net_g.half() + else: + self.net_g = self.net_g.float() + self.is_half = config.is_half + else: + self.tgt_sr = last_rvc.tgt_sr + self.if_f0 = last_rvc.if_f0 + self.version = last_rvc.version + self.net_g = last_rvc.net_g + self.is_half = last_rvc.is_half + + if last_rvc is not None and hasattr(last_rvc, "model_rmvpe"): + self.model_rmvpe = last_rvc.model_rmvpe + except: + logger.warn(traceback.format_exc()) + + def change_key(self, new_key): + self.f0_up_key = new_key + + def change_index_rate(self, new_index_rate): + if new_index_rate != 0 and self.index_rate == 0: + self.index = faiss.read_index(self.index_path) + self.big_npy = self.index.reconstruct_n(0, self.index.ntotal) + logger.info("Index search enabled") + self.index_rate = new_index_rate + + def get_f0_post(self, f0): + f0_min = self.f0_min + f0_max = self.f0_max + f0_mel_min = 1127 * np.log(1 + f0_min / 700) + f0_mel_max = 1127 * np.log(1 + f0_max / 700) + f0bak = f0.copy() + f0_mel = 1127 * np.log(1 + f0 / 700) + f0_mel[f0_mel > 0] = (f0_mel[f0_mel > 0] - f0_mel_min) * 254 / ( + f0_mel_max - f0_mel_min + ) + 1 + f0_mel[f0_mel <= 1] = 1 + f0_mel[f0_mel > 255] = 255 + f0_coarse = np.rint(f0_mel).astype(np.int32) + return f0_coarse, f0bak + + def get_f0(self, x, f0_up_key, n_cpu, method="harvest"): + n_cpu = int(n_cpu) + if method == "crepe": + return self.get_f0_crepe(x, f0_up_key) + if method == "rmvpe": + return self.get_f0_rmvpe(x, f0_up_key) + if method == "pm": + p_len = x.shape[0] // 160 + 1 + f0 = ( + parselmouth.Sound(x, 16000) + .to_pitch_ac( + time_step=0.01, + voicing_threshold=0.6, + pitch_floor=50, + pitch_ceiling=1100, + ) + .selected_array["frequency"] + ) + + pad_size = (p_len - len(f0) + 1) // 2 + if pad_size > 0 or p_len - len(f0) - pad_size > 0: + # print(pad_size, p_len - len(f0) - pad_size) + f0 = np.pad( + f0, [[pad_size, p_len - len(f0) - pad_size]], mode="constant" + ) + + f0 *= pow(2, f0_up_key / 12) + return self.get_f0_post(f0) + if n_cpu == 1: + f0, t = pyworld.harvest( + x.astype(np.double), + fs=16000, + f0_ceil=1100, + f0_floor=50, + frame_period=10, + ) + f0 = signal.medfilt(f0, 3) + f0 *= pow(2, f0_up_key / 12) + return self.get_f0_post(f0) + f0bak = np.zeros(x.shape[0] // 160 + 1, dtype=np.float64) + length = len(x) + part_length = 160 * ((length // 160 - 1) // n_cpu + 1) + n_cpu = (length // 160 - 1) // (part_length // 160) + 1 + ts = ttime() + res_f0 = mm.dict() + for idx in range(n_cpu): + tail = part_length * (idx + 1) + 320 + if idx == 0: + self.inp_q.put((idx, x[:tail], res_f0, n_cpu, ts)) + else: + self.inp_q.put( + (idx, x[part_length * idx - 320 : tail], res_f0, n_cpu, ts) + ) + while 1: + res_ts = self.opt_q.get() + if res_ts == ts: + break + f0s = [i[1] for i in sorted(res_f0.items(), key=lambda x: x[0])] + for idx, f0 in enumerate(f0s): + if idx == 0: + f0 = f0[:-3] + elif idx != n_cpu - 1: + f0 = f0[2:-3] + else: + f0 = f0[2:] + f0bak[ + part_length * idx // 160 : part_length * idx // 160 + f0.shape[0] + ] = f0 + f0bak = signal.medfilt(f0bak, 3) + f0bak *= pow(2, f0_up_key / 12) + return self.get_f0_post(f0bak) + + def get_f0_crepe(self, x, f0_up_key): + if "privateuseone" in str(self.device): ###不支持dml,cpu又太慢用不成,拿pm顶替 + return self.get_f0(x, f0_up_key, 1, "pm") + audio = torch.tensor(np.copy(x))[None].float() + # print("using crepe,device:%s"%self.device) + f0, pd = torchcrepe.predict( + audio, + self.sr, + 160, + self.f0_min, + self.f0_max, + "full", + batch_size=512, + # device=self.device if self.device.type!="privateuseone" else "cpu",###crepe不用半精度全部是全精度所以不愁###cpu延迟高到没法用 + device=self.device, + return_periodicity=True, + ) + pd = torchcrepe.filter.median(pd, 3) + f0 = torchcrepe.filter.mean(f0, 3) + f0[pd < 0.1] = 0 + f0 = f0[0].cpu().numpy() + f0 *= pow(2, f0_up_key / 12) + return self.get_f0_post(f0) + + def get_f0_rmvpe(self, x, f0_up_key): + if hasattr(self, "model_rmvpe") == False: + from infer.lib.rmvpe import RMVPE + + logger.info("Loading rmvpe model") + self.model_rmvpe = RMVPE( + # "rmvpe.pt", is_half=self.is_half if self.device.type!="privateuseone" else False, device=self.device if self.device.type!="privateuseone"else "cpu"####dml时强制对rmvpe用cpu跑 + # "rmvpe.pt", is_half=False, device=self.device####dml配置 + # "rmvpe.pt", is_half=False, device="cpu"####锁定cpu配置 + "assets/rmvpe/rmvpe.pt", + is_half=self.is_half, + device=self.device, ####正常逻辑 + ) + # self.model_rmvpe = RMVPE("aug2_58000_half.pt", is_half=self.is_half, device=self.device) + f0 = self.model_rmvpe.infer_from_audio(x, thred=0.03) + f0 *= pow(2, f0_up_key / 12) + return self.get_f0_post(f0) + + def infer( + self, + feats: torch.Tensor, + indata: np.ndarray, + block_frame_16k, + rate, + cache_pitch, + cache_pitchf, + f0method, + ) -> np.ndarray: + feats = feats.view(1, -1) + if config.is_half: + feats = feats.half() + else: + feats = feats.float() + feats = feats.to(self.device) + t1 = ttime() + with torch.no_grad(): + padding_mask = torch.BoolTensor(feats.shape).to(self.device).fill_(False) + inputs = { + "source": feats, + "padding_mask": padding_mask, + "output_layer": 9 if self.version == "v1" else 12, + } + logits = self.model.extract_features(**inputs) + feats = ( + self.model.final_proj(logits[0]) if self.version == "v1" else logits[0] + ) + feats = F.pad(feats, (0, 0, 1, 0)) + t2 = ttime() + try: + if hasattr(self, "index") and self.index_rate != 0: + leng_replace_head = int(rate * feats[0].shape[0]) + npy = feats[0][-leng_replace_head:].cpu().numpy().astype("float32") + score, ix = self.index.search(npy, k=8) + weight = np.square(1 / score) + weight /= weight.sum(axis=1, keepdims=True) + npy = np.sum(self.big_npy[ix] * np.expand_dims(weight, axis=2), axis=1) + if config.is_half: + npy = npy.astype("float16") + feats[0][-leng_replace_head:] = ( + torch.from_numpy(npy).unsqueeze(0).to(self.device) * self.index_rate + + (1 - self.index_rate) * feats[0][-leng_replace_head:] + ) + else: + logger.warn("Index search FAILED or disabled") + except: + traceback.print_exc() + logger.warn("Index search FAILED") + feats = F.interpolate(feats.permute(0, 2, 1), scale_factor=2).permute(0, 2, 1) + t3 = ttime() + if self.if_f0 == 1: + pitch, pitchf = self.get_f0(indata, self.f0_up_key, self.n_cpu, f0method) + start_frame = block_frame_16k // 160 + end_frame = len(cache_pitch) - (pitch.shape[0] - 4) + start_frame + cache_pitch[:] = np.append(cache_pitch[start_frame:end_frame], pitch[3:-1]) + cache_pitchf[:] = np.append( + cache_pitchf[start_frame:end_frame], pitchf[3:-1] + ) + p_len = min(feats.shape[1], 13000, cache_pitch.shape[0]) + else: + cache_pitch, cache_pitchf = None, None + p_len = min(feats.shape[1], 13000) + t4 = ttime() + feats = feats[:, :p_len, :] + if self.if_f0 == 1: + cache_pitch = cache_pitch[:p_len] + cache_pitchf = cache_pitchf[:p_len] + cache_pitch = torch.LongTensor(cache_pitch).unsqueeze(0).to(self.device) + cache_pitchf = torch.FloatTensor(cache_pitchf).unsqueeze(0).to(self.device) + p_len = torch.LongTensor([p_len]).to(self.device) + ii = 0 # sid + sid = torch.LongTensor([ii]).to(self.device) + with torch.no_grad(): + if self.if_f0 == 1: + # print(12222222222,feats.device,p_len.device,cache_pitch.device,cache_pitchf.device,sid.device,rate2) + infered_audio = self.net_g.infer( + feats, p_len, cache_pitch, cache_pitchf, sid, rate + )[0][0, 0].data.float() + else: + infered_audio = self.net_g.infer(feats, p_len, sid, rate)[0][ + 0, 0 + ].data.float() + t5 = ttime() + logger.info( + "Spent time: fea = %.2fs, index = %.2fs, f0 = %.2fs, model = %.2fs", + t2 - t1, + t3 - t2, + t4 - t3, + t5 - t4, + ) + return infered_audio diff --git a/voice_conversion/rvc-v2-brandon/tools/torchgate/__init__.py b/voice_conversion/rvc-v2-brandon/tools/torchgate/__init__.py new file mode 100644 index 0000000..227666c --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/torchgate/__init__.py @@ -0,0 +1,12 @@ +""" +TorchGating is a PyTorch-based implementation of Spectral Gating +================================================ +Author: Asaf Zorea + +Contents +-------- +torchgate imports all the functions from PyTorch, and in addition provides: + TorchGating --- A PyTorch module that applies a spectral gate to an input signal + +""" +from .torchgate import TorchGate diff --git a/voice_conversion/rvc-v2-brandon/tools/torchgate/torchgate.py b/voice_conversion/rvc-v2-brandon/tools/torchgate/torchgate.py new file mode 100644 index 0000000..dc135be --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/torchgate/torchgate.py @@ -0,0 +1,264 @@ +import torch +from torch.nn.functional import conv1d, conv2d +from typing import Union, Optional +from .utils import linspace, temperature_sigmoid, amp_to_db + + +class TorchGate(torch.nn.Module): + """ + A PyTorch module that applies a spectral gate to an input signal. + + Arguments: + sr {int} -- Sample rate of the input signal. + nonstationary {bool} -- Whether to use non-stationary or stationary masking (default: {False}). + n_std_thresh_stationary {float} -- Number of standard deviations above mean to threshold noise for + stationary masking (default: {1.5}). + n_thresh_nonstationary {float} -- Number of multiplies above smoothed magnitude spectrogram. for + non-stationary masking (default: {1.3}). + temp_coeff_nonstationary {float} -- Temperature coefficient for non-stationary masking (default: {0.1}). + n_movemean_nonstationary {int} -- Number of samples for moving average smoothing in non-stationary masking + (default: {20}). + prop_decrease {float} -- Proportion to decrease signal by where the mask is zero (default: {1.0}). + n_fft {int} -- Size of FFT for STFT (default: {1024}). + win_length {[int]} -- Window length for STFT. If None, defaults to `n_fft` (default: {None}). + hop_length {[int]} -- Hop length for STFT. If None, defaults to `win_length` // 4 (default: {None}). + freq_mask_smooth_hz {float} -- Frequency smoothing width for mask (in Hz). If None, no smoothing is applied + (default: {500}). + time_mask_smooth_ms {float} -- Time smoothing width for mask (in ms). If None, no smoothing is applied + (default: {50}). + """ + + @torch.no_grad() + def __init__( + self, + sr: int, + nonstationary: bool = False, + n_std_thresh_stationary: float = 1.5, + n_thresh_nonstationary: float = 1.3, + temp_coeff_nonstationary: float = 0.1, + n_movemean_nonstationary: int = 20, + prop_decrease: float = 1.0, + n_fft: int = 1024, + win_length: bool = None, + hop_length: int = None, + freq_mask_smooth_hz: float = 500, + time_mask_smooth_ms: float = 50, + ): + super().__init__() + + # General Params + self.sr = sr + self.nonstationary = nonstationary + assert 0.0 <= prop_decrease <= 1.0 + self.prop_decrease = prop_decrease + + # STFT Params + self.n_fft = n_fft + self.win_length = self.n_fft if win_length is None else win_length + self.hop_length = self.win_length // 4 if hop_length is None else hop_length + + # Stationary Params + self.n_std_thresh_stationary = n_std_thresh_stationary + + # Non-Stationary Params + self.temp_coeff_nonstationary = temp_coeff_nonstationary + self.n_movemean_nonstationary = n_movemean_nonstationary + self.n_thresh_nonstationary = n_thresh_nonstationary + + # Smooth Mask Params + self.freq_mask_smooth_hz = freq_mask_smooth_hz + self.time_mask_smooth_ms = time_mask_smooth_ms + self.register_buffer("smoothing_filter", self._generate_mask_smoothing_filter()) + + @torch.no_grad() + def _generate_mask_smoothing_filter(self) -> Union[torch.Tensor, None]: + """ + A PyTorch module that applies a spectral gate to an input signal using the STFT. + + Returns: + smoothing_filter (torch.Tensor): a 2D tensor representing the smoothing filter, + with shape (n_grad_freq, n_grad_time), where n_grad_freq is the number of frequency + bins to smooth and n_grad_time is the number of time frames to smooth. + If both self.freq_mask_smooth_hz and self.time_mask_smooth_ms are None, returns None. + """ + if self.freq_mask_smooth_hz is None and self.time_mask_smooth_ms is None: + return None + + n_grad_freq = ( + 1 + if self.freq_mask_smooth_hz is None + else int(self.freq_mask_smooth_hz / (self.sr / (self.n_fft / 2))) + ) + if n_grad_freq < 1: + raise ValueError( + f"freq_mask_smooth_hz needs to be at least {int((self.sr / (self._n_fft / 2)))} Hz" + ) + + n_grad_time = ( + 1 + if self.time_mask_smooth_ms is None + else int(self.time_mask_smooth_ms / ((self.hop_length / self.sr) * 1000)) + ) + if n_grad_time < 1: + raise ValueError( + f"time_mask_smooth_ms needs to be at least {int((self.hop_length / self.sr) * 1000)} ms" + ) + + if n_grad_time == 1 and n_grad_freq == 1: + return None + + v_f = torch.cat( + [ + linspace(0, 1, n_grad_freq + 1, endpoint=False), + linspace(1, 0, n_grad_freq + 2), + ] + )[1:-1] + v_t = torch.cat( + [ + linspace(0, 1, n_grad_time + 1, endpoint=False), + linspace(1, 0, n_grad_time + 2), + ] + )[1:-1] + smoothing_filter = torch.outer(v_f, v_t).unsqueeze(0).unsqueeze(0) + + return smoothing_filter / smoothing_filter.sum() + + @torch.no_grad() + def _stationary_mask( + self, X_db: torch.Tensor, xn: Optional[torch.Tensor] = None + ) -> torch.Tensor: + """ + Computes a stationary binary mask to filter out noise in a log-magnitude spectrogram. + + Arguments: + X_db (torch.Tensor): 2D tensor of shape (frames, freq_bins) containing the log-magnitude spectrogram. + xn (torch.Tensor): 1D tensor containing the audio signal corresponding to X_db. + + Returns: + sig_mask (torch.Tensor): Binary mask of the same shape as X_db, where values greater than the threshold + are set to 1, and the rest are set to 0. + """ + if xn is not None: + XN = torch.stft( + xn, + n_fft=self.n_fft, + hop_length=self.hop_length, + win_length=self.win_length, + return_complex=True, + pad_mode="constant", + center=True, + window=torch.hann_window(self.win_length).to(xn.device), + ) + + XN_db = amp_to_db(XN).to(dtype=X_db.dtype) + else: + XN_db = X_db + + # calculate mean and standard deviation along the frequency axis + std_freq_noise, mean_freq_noise = torch.std_mean(XN_db, dim=-1) + + # compute noise threshold + noise_thresh = mean_freq_noise + std_freq_noise * self.n_std_thresh_stationary + + # create binary mask by thresholding the spectrogram + sig_mask = X_db > noise_thresh.unsqueeze(2) + return sig_mask + + @torch.no_grad() + def _nonstationary_mask(self, X_abs: torch.Tensor) -> torch.Tensor: + """ + Computes a non-stationary binary mask to filter out noise in a log-magnitude spectrogram. + + Arguments: + X_abs (torch.Tensor): 2D tensor of shape (frames, freq_bins) containing the magnitude spectrogram. + + Returns: + sig_mask (torch.Tensor): Binary mask of the same shape as X_abs, where values greater than the threshold + are set to 1, and the rest are set to 0. + """ + X_smoothed = ( + conv1d( + X_abs.reshape(-1, 1, X_abs.shape[-1]), + torch.ones( + self.n_movemean_nonstationary, + dtype=X_abs.dtype, + device=X_abs.device, + ).view(1, 1, -1), + padding="same", + ).view(X_abs.shape) + / self.n_movemean_nonstationary + ) + + # Compute slowness ratio and apply temperature sigmoid + slowness_ratio = (X_abs - X_smoothed) / (X_smoothed + 1e-6) + sig_mask = temperature_sigmoid( + slowness_ratio, self.n_thresh_nonstationary, self.temp_coeff_nonstationary + ) + + return sig_mask + + def forward( + self, x: torch.Tensor, xn: Optional[torch.Tensor] = None + ) -> torch.Tensor: + """ + Apply the proposed algorithm to the input signal. + + Arguments: + x (torch.Tensor): The input audio signal, with shape (batch_size, signal_length). + xn (Optional[torch.Tensor]): The noise signal used for stationary noise reduction. If `None`, the input + signal is used as the noise signal. Default: `None`. + + Returns: + torch.Tensor: The denoised audio signal, with the same shape as the input signal. + """ + assert x.ndim == 2 + if x.shape[-1] < self.win_length * 2: + raise Exception(f"x must be bigger than {self.win_length * 2}") + + assert xn is None or xn.ndim == 1 or xn.ndim == 2 + if xn is not None and xn.shape[-1] < self.win_length * 2: + raise Exception(f"xn must be bigger than {self.win_length * 2}") + + # Compute short-time Fourier transform (STFT) + X = torch.stft( + x, + n_fft=self.n_fft, + hop_length=self.hop_length, + win_length=self.win_length, + return_complex=True, + pad_mode="constant", + center=True, + window=torch.hann_window(self.win_length).to(x.device), + ) + + # Compute signal mask based on stationary or nonstationary assumptions + if self.nonstationary: + sig_mask = self._nonstationary_mask(X.abs()) + else: + sig_mask = self._stationary_mask(amp_to_db(X), xn) + + # Propagate decrease in signal power + sig_mask = self.prop_decrease * (sig_mask * 1.0 - 1.0) + 1.0 + + # Smooth signal mask with 2D convolution + if self.smoothing_filter is not None: + sig_mask = conv2d( + sig_mask.unsqueeze(1), + self.smoothing_filter.to(sig_mask.dtype), + padding="same", + ) + + # Apply signal mask to STFT magnitude and phase components + Y = X * sig_mask.squeeze(1) + + # Inverse STFT to obtain time-domain signal + y = torch.istft( + Y, + n_fft=self.n_fft, + hop_length=self.hop_length, + win_length=self.win_length, + center=True, + window=torch.hann_window(self.win_length).to(Y.device), + ) + + return y.to(dtype=x.dtype) diff --git a/voice_conversion/rvc-v2-brandon/tools/torchgate/utils.py b/voice_conversion/rvc-v2-brandon/tools/torchgate/utils.py new file mode 100644 index 0000000..68b7c03 --- /dev/null +++ b/voice_conversion/rvc-v2-brandon/tools/torchgate/utils.py @@ -0,0 +1,70 @@ +import torch +from torch.types import Number + + +@torch.no_grad() +def amp_to_db( + x: torch.Tensor, eps=torch.finfo(torch.float64).eps, top_db=40 +) -> torch.Tensor: + """ + Convert the input tensor from amplitude to decibel scale. + + Arguments: + x {[torch.Tensor]} -- [Input tensor.] + + Keyword Arguments: + eps {[float]} -- [Small value to avoid numerical instability.] + (default: {torch.finfo(torch.float64).eps}) + top_db {[float]} -- [threshold the output at ``top_db`` below the peak] + ` (default: {40}) + + Returns: + [torch.Tensor] -- [Output tensor in decibel scale.] + """ + x_db = 20 * torch.log10(x.abs() + eps) + return torch.max(x_db, (x_db.max(-1).values - top_db).unsqueeze(-1)) + + +@torch.no_grad() +def temperature_sigmoid(x: torch.Tensor, x0: float, temp_coeff: float) -> torch.Tensor: + """ + Apply a sigmoid function with temperature scaling. + + Arguments: + x {[torch.Tensor]} -- [Input tensor.] + x0 {[float]} -- [Parameter that controls the threshold of the sigmoid.] + temp_coeff {[float]} -- [Parameter that controls the slope of the sigmoid.] + + Returns: + [torch.Tensor] -- [Output tensor after applying the sigmoid with temperature scaling.] + """ + return torch.sigmoid((x - x0) / temp_coeff) + + +@torch.no_grad() +def linspace( + start: Number, stop: Number, num: int = 50, endpoint: bool = True, **kwargs +) -> torch.Tensor: + """ + Generate a linearly spaced 1-D tensor. + + Arguments: + start {[Number]} -- [The starting value of the sequence.] + stop {[Number]} -- [The end value of the sequence, unless `endpoint` is set to False. + In that case, the sequence consists of all but the last of ``num + 1`` + evenly spaced samples, so that `stop` is excluded. Note that the step + size changes when `endpoint` is False.] + + Keyword Arguments: + num {[int]} -- [Number of samples to generate. Default is 50. Must be non-negative.] + endpoint {[bool]} -- [If True, `stop` is the last sample. Otherwise, it is not included. + Default is True.] + **kwargs -- [Additional arguments to be passed to the underlying PyTorch `linspace` function.] + + Returns: + [torch.Tensor] -- [1-D tensor of `num` equally spaced samples from `start` to `stop`.] + """ + if endpoint: + return torch.linspace(start, stop, num, **kwargs) + else: + return torch.linspace(start, stop, num + 1, **kwargs)[:-1]