Merge branch 'RVC-Boss:main' into main

This commit is contained in:
刘悦 2024-01-28 15:36:52 +08:00 committed by GitHub
commit b4a9a7cb42
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
14 changed files with 793 additions and 308 deletions

View File

@ -4,6 +4,9 @@ logging.getLogger("urllib3").setLevel(logging.ERROR)
logging.getLogger("httpcore").setLevel(logging.ERROR)
logging.getLogger("httpx").setLevel(logging.ERROR)
logging.getLogger("asyncio").setLevel(logging.ERROR)
logging.getLogger("charset_normalizer").setLevel(logging.ERROR)
logging.getLogger("torchaudio._extension").setLevel(logging.ERROR)
import pdb
if os.path.exists("./gweight.txt"):
@ -26,10 +29,10 @@ else:
# )
# sovits_path = os.environ.get("sovits_path", "pretrained_models/s2G488k.pth")
cnhubert_base_path = os.environ.get(
"cnhubert_base_path", "pretrained_models/chinese-hubert-base"
"cnhubert_base_path", "GPT_SoVITS/pretrained_models/chinese-hubert-base"
)
bert_path = os.environ.get(
"bert_path", "pretrained_models/chinese-roberta-wwm-ext-large"
"bert_path", "GPT_SoVITS/pretrained_models/chinese-roberta-wwm-ext-large"
)
infer_ttswebui = os.environ.get("infer_ttswebui", 9872)
infer_ttswebui = int(infer_ttswebui)
@ -92,7 +95,7 @@ def get_bert_feature(text, word2ph):
with torch.no_grad():
inputs = tokenizer(text, return_tensors="pt")
for i in inputs:
inputs[i] = inputs[i].to(device) #####输入是long不用管精度问题精度随bert_model
inputs[i] = inputs[i].to(device)
res = bert_model(**inputs, output_hidden_states=True)
res = torch.cat(res["hidden_states"][-3:-2], -1)[0].cpu()[1:-1]
assert len(word2ph) == len(text)
@ -149,7 +152,8 @@ def change_sovits_weights(sovits_path):
n_speakers=hps.data.n_speakers,
**hps.model
)
del vq_model.enc_q
if("pretrained"not in sovits_path):
del vq_model.enc_q
if is_half == True:
vq_model = vq_model.half().to(device)
else:
@ -199,7 +203,84 @@ dict_language={
}
def get_tts_wav(ref_wav_path, prompt_text, prompt_language, text, text_language):
def splite_en_inf(sentence, language):
pattern = re.compile(r'[a-zA-Z. ]+')
textlist = []
langlist = []
pos = 0
for match in pattern.finditer(sentence):
start, end = match.span()
if start > pos:
textlist.append(sentence[pos:start])
langlist.append(language)
textlist.append(sentence[start:end])
langlist.append("en")
pos = end
if pos < len(sentence):
textlist.append(sentence[pos:])
langlist.append(language)
return textlist, langlist
def clean_text_inf(text, language):
phones, word2ph, norm_text = clean_text(text, language)
phones = cleaned_text_to_sequence(phones)
return phones, word2ph, norm_text
def get_bert_inf(phones, word2ph, norm_text, language):
if language == "zh":
bert = get_bert_feature(norm_text, word2ph).to(device)
else:
bert = torch.zeros(
(1024, len(phones)),
dtype=torch.float16 if is_half == True else torch.float32,
).to(device)
return bert
def nonen_clean_text_inf(text, language):
textlist, langlist = splite_en_inf(text, language)
phones_list = []
word2ph_list = []
norm_text_list = []
for i in range(len(textlist)):
lang = langlist[i]
phones, word2ph, norm_text = clean_text_inf(textlist[i], lang)
phones_list.append(phones)
if lang == "en" or "ja":
pass
else:
word2ph_list.append(word2ph)
norm_text_list.append(norm_text)
print(word2ph_list)
phones = sum(phones_list, [])
word2ph = sum(word2ph_list, [])
norm_text = ' '.join(norm_text_list)
return phones, word2ph, norm_text
def nonen_get_bert_inf(text, language):
textlist, langlist = splite_en_inf(text, language)
print(textlist)
print(langlist)
bert_list = []
for i in range(len(textlist)):
text = textlist[i]
lang = langlist[i]
phones, word2ph, norm_text = clean_text_inf(text, lang)
bert = get_bert_inf(phones, word2ph, norm_text, lang)
bert_list.append(bert)
bert = torch.cat(bert_list, dim=1)
return bert
#i18n("不切"),i18n("凑五句一切"),i18n("凑50字一切"),i18n("按中文句号。切"),i18n("按英文句号.切")
def get_tts_wav(ref_wav_path, prompt_text, prompt_language, text, text_language,how_to_cut=i18n("不切")):
t0 = ttime()
prompt_text = prompt_text.strip("\n")
prompt_language, text = prompt_language, text.strip("\n")
@ -228,30 +309,38 @@ def get_tts_wav(ref_wav_path, prompt_text, prompt_language, text, text_language)
t1 = ttime()
prompt_language = dict_language[prompt_language]
text_language = dict_language[text_language]
phones1, word2ph1, norm_text1 = clean_text(prompt_text, prompt_language)
phones1 = cleaned_text_to_sequence(phones1)
texts = text.split("\n")
audio_opt = []
if prompt_language == "zh":
bert1 = get_bert_feature(norm_text1, word2ph1).to(device)
if prompt_language == "en":
phones1, word2ph1, norm_text1 = clean_text_inf(prompt_text, prompt_language)
else:
bert1 = torch.zeros(
(1024, len(phones1)),
dtype=torch.float16 if is_half == True else torch.float32,
).to(device)
phones1, word2ph1, norm_text1 = nonen_clean_text_inf(prompt_text, prompt_language)
if(how_to_cut==i18n("凑五句一切")):text=cut1(text)
elif(how_to_cut==i18n("凑50字一切")):text=cut2(text)
elif(how_to_cut==i18n("按中文句号。切")):text=cut3(text)
elif(how_to_cut==i18n("按英文句号.切")):text=cut4(text)
text = text.replace("\n\n","\n").replace("\n\n","\n").replace("\n\n","\n")
if(text[-1]not in splits):text+=""if text_language!="en"else "."
texts=text.split("\n")
audio_opt = []
if prompt_language == "en":
bert1 = get_bert_inf(phones1, word2ph1, norm_text1, prompt_language)
else:
bert1 = nonen_get_bert_inf(prompt_text, prompt_language)
for text in texts:
# 解决输入目标文本的空行导致报错的问题
if (len(text.strip()) == 0):
continue
phones2, word2ph2, norm_text2 = clean_text(text, text_language)
phones2 = cleaned_text_to_sequence(phones2)
if text_language == "zh":
bert2 = get_bert_feature(norm_text2, word2ph2).to(device)
if text_language == "en":
phones2, word2ph2, norm_text2 = clean_text_inf(text, text_language)
else:
bert2 = torch.zeros((1024, len(phones2))).to(bert1)
phones2, word2ph2, norm_text2 = nonen_clean_text_inf(text, text_language)
if text_language == "en":
bert2 = get_bert_inf(phones2, word2ph2, norm_text2, text_language)
else:
bert2 = nonen_get_bert_inf(text, text_language)
bert = torch.cat([bert1, bert2], 1)
all_phoneme_ids = torch.LongTensor(phones1 + phones2).to(device).unsqueeze(0)
@ -351,8 +440,9 @@ def cut1(inp):
def cut2(inp):
inp = inp.strip("\n")
inps = split(inp)
# print(inps)
if len(inps) < 2:
return [inp]
return inp
opts = []
summ = 0
tmp_str = ""
@ -365,7 +455,8 @@ def cut2(inp):
tmp_str = ""
if tmp_str != "":
opts.append(tmp_str)
if len(opts[-1]) < 50: ##如果最后一个太短了,和前一个合一起
# print(opts)
if len(opts)>1 and len(opts[-1]) < 50: ##如果最后一个太短了,和前一个合一起
opts[-2] = opts[-2] + opts[-1]
opts = opts[:-1]
return "\n".join(opts)
@ -374,6 +465,9 @@ def cut2(inp):
def cut3(inp):
inp = inp.strip("\n")
return "\n".join(["%s" % item for item in inp.strip("").split("")])
def cut4(inp):
inp = inp.strip("\n")
return "\n".join(["%s." % item for item in inp.strip(".").split(".")])
def custom_sort_key(s):
# 使用正则表达式提取字符串中的数字部分和非数字部分
@ -422,17 +516,24 @@ with gr.Blocks(title="GPT-SoVITS WebUI") as app:
prompt_language = gr.Dropdown(
label=i18n("参考音频的语种"),choices=[i18n("中文"),i18n("英文"),i18n("日文")],value=i18n(upload_audio_lanuage)
)
gr.Markdown(value=i18n("*请填写需要合成的目标文本"))
gr.Markdown(value=i18n("*请填写需要合成的目标文本。中英混合选中文,日英混合选日文,中日混合暂不支持,非目标语言文本自动遗弃。"))
with gr.Row():
text = gr.Textbox(label=i18n("需要合成的文本"), value="")
text_language = gr.Dropdown(
label=i18n("需要合成的语种"),choices=[i18n("中文"),i18n("英文"),i18n("日文")],value=i18n("中文")
)
how_to_cut = gr.Radio(
label=i18n("怎么切"),
choices=[i18n("不切"),i18n("凑五句一切"),i18n("凑50字一切"),i18n("按中文句号。切"),i18n("按英文句号.切"),],
value=i18n("凑50字一切"),
interactive=True,
)
inference_button = gr.Button(i18n("合成语音"), variant="primary")
output = gr.Audio(label=i18n("输出的语音"))
inference_button.click(
get_tts_wav,
[inp_ref, prompt_text, prompt_language, text, text_language],
[inp_ref, prompt_text, prompt_language, text, text_language,how_to_cut],
[output],
)
@ -442,10 +543,12 @@ with gr.Blocks(title="GPT-SoVITS WebUI") as app:
button1 = gr.Button(i18n("凑五句一切"), variant="primary")
button2 = gr.Button(i18n("凑50字一切"), variant="primary")
button3 = gr.Button(i18n("按中文句号。切"), variant="primary")
button4 = gr.Button(i18n("按英文句号.切"), variant="primary")
text_opt = gr.Textbox(label=i18n("切分后文本"), value="")
button1.click(cut1, [text_inp], [text_opt])
button2.click(cut2, [text_inp], [text_opt])
button3.click(cut3, [text_inp], [text_opt])
button4.click(cut4, [text_inp], [text_opt])
gr.Markdown(value=i18n("后续将支持混合语种编码文本输入。"))
app.queue(concurrency_count=511, max_size=1022).launch(

View File

@ -455,6 +455,35 @@ class ToneSandhi:
"电子",
"人人",
"虎虎",
"幺幺",
"干嘛",
"学子",
"哈哈",
"数数",
"袅袅",
"局地",
"以下",
"娃哈哈",
"花花草草",
"留得",
"耕地",
"想想",
"熙熙",
"攘攘",
"卵子",
"死死",
"冉冉",
"恳恳",
"佼佼",
"吵吵",
"打打",
"考考",
"整整",
"莘莘",
"落地",
"算子",
"家家户户",
"青青",
}
self.punc = ":,;。?!“”‘’':,;.?!"

View File

@ -9,7 +9,7 @@ A Powerful Few-shot Voice Conversion and Text-to-Speech WebUI.<br><br>
<img src="https://counter.seku.su/cmoe?name=gptsovits&theme=r34" /><br>
[![Licence](https://img.shields.io/badge/LICENSE-MIT-green.svg?style=for-the-badge)](https://github.com/RVC-Boss/GPT-SoVITS/blob/main/LICENSE)
[![Huggingface](https://img.shields.io/badge/🤗%20-Spaces-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/GPT-SoVITS/tree/main)
[![Huggingface](https://img.shields.io/badge/🤗%20-Models%20Repo-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/GPT-SoVITS/tree/main)
[**English**](./README.md) | [**中文简体**](./docs/cn/README.md) | [**日本語**](./docs/ja/README.md)
@ -43,12 +43,19 @@ If you are a Windows user (tested with win>=10) you can install directly via the
- Python 3.9, PyTorch 2.0.1, CUDA 11
- Python 3.10.13, PyTorch 2.1.2, CUDA 12.3
- Python 3.9, PyTorch 2.3.0.dev20240122, macOS 14.3 (Apple Silicon, MPS)
- Python 3.9, PyTorch 2.3.0.dev20240122, macOS 14.3 (Apple silicon, GPU)
_Note: numba==0.56.4 require py<3.11_
### For Mac Users
If you are a Mac user, please install by using the following commands:
If you are a Mac user, make sure you meet the following conditions for training and inferencing with GPU:
- Mac computers with Apple silicon or AMD GPUs
- macOS 12.3 or later
- Xcode command-line tools installed by running `xcode-select --install`
_Other Macs can do inference with CPU only._
Then install by using the following commands:
#### Create Environment
```bash
conda create -n GPTSoVits python=3.9
@ -60,7 +67,7 @@ pip install -r requirements.txt
pip uninstall torch torchaudio
pip3 install --pre torch torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu
```
_Note: For preprocessing with UVR5, it is recommended to [download the original project GUI](https://github.com/Anjok07/ultimatevocalremovergui) and select GPU for operation. Additionally, there may be memory leak issues when using Mac for inference, restarting the inference webUI can release the memory._
_Note: For preprocessing with UVR5, it is recommended to [download the original project GUI](https://github.com/Anjok07/ultimatevocalremovergui) and select "GPU Conversion". Additionally, there might be memory leak issues, especially during inference. Restarting the inference webUI can help._
### Quick Install with Conda
```bash

View File

@ -29,6 +29,19 @@ webui_port_subfix = 9871
api_port = 9880
if infer_device == "cuda":
gpu_name = torch.cuda.get_device_name(0)
if (
("16" in gpu_name and "V100" not in gpu_name.upper())
or "P40" in gpu_name.upper()
or "P10" in gpu_name.upper()
or "1060" in gpu_name
or "1070" in gpu_name
or "1080" in gpu_name
):
is_half=False
if(infer_device=="cpu"):is_half=False
class Config:
def __init__(self):

View File

@ -29,3 +29,22 @@
3-优化模型文件排序逻辑
4-中文分词使用jieba_fast代替jieba
### 20240126更新
1-支持输出文本中英混合、日英混合
2-输出可选切分模式
3-修复uvr5读取到目录自动跳出的问题
4-修复多个换行导致推理报错
5-去除推理界面大量冗余log
6-支持mac训练推理
7-自动识别不支持半精度的卡强制单精度。cpu推理下强制单精度。

View File

@ -9,7 +9,7 @@
<img src="https://counter.seku.su/cmoe?name=gptsovits&theme=r34" /><br>
[![Licence](https://img.shields.io/badge/LICENSE-MIT-green.svg?style=for-the-badge)](https://github.com/RVC-Boss/GPT-SoVITS/blob/main/LICENSE)
[![Huggingface](https://img.shields.io/badge/🤗%20-Spaces-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/GPT-SoVITS/tree/main)
[![Huggingface](https://img.shields.io/badge/🤗%20-Models%20Repo-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/GPT-SoVITS/tree/main)
[**English**](./README.md) | [**中文简体**](./README_ZH.md)
@ -43,12 +43,19 @@ https://github.com/RVC-Boss/GPT-SoVITS/assets/129054828/05bee1fa-bdd8-4d85-9350-
- Python 3.9、PyTorch 2.0.1和CUDA 11
- Python 3.10.13, PyTorch 2.1.2和CUDA 12.3
- Python 3.9、Pytorch 2.3.0.dev20240122和macOS 14.3Apple 芯片,MPS
- Python 3.9、Pytorch 2.3.0.dev20240122和macOS 14.3Apple 芯片,GPU
_注意: numba==0.56.4 需要 python<3.11_
### Mac 用户
如果你是Mac用户请使用以下命令安装
如果你是Mac用户请先确保满足以下条件以使用GPU进行训练和推理
- 搭载Apple芯片或AMD GPU的Mac
- macOS 12.3或更高版本
- 已通过运行`xcode-select --install`安装Xcode command-line tools
_其他Mac仅支持使用CPU进行推理_
然后使用以下命令安装:
#### 创建环境
```bash
conda create -n GPTSoVits python=3.9
@ -60,7 +67,7 @@ pip install -r requirements.txt
pip uninstall torch torchaudio
pip3 install --pre torch torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu
```
_注意如需使用UVR5进行预处理建议[下载原项目GUI](https://github.com/Anjok07/ultimatevocalremovergui),勾选GPU运行。另外使用Mac推理时可能存在内存泄漏问题重启推理UI即可释放内存。_
_注意如需使用UVR5进行预处理建议[下载原项目GUI](https://github.com/Anjok07/ultimatevocalremovergui),勾选“GPU Conversion”。另外可能会出现内存泄漏问题主要体现在推理时。重启推理webUI可以释放内存。_
### 使用Conda快速安装
```bash

View File

@ -9,7 +9,7 @@
<img src="https://counter.seku.su/cmoe?name=gptsovits&theme=r34" /><br>
[![Licence](https://img.shields.io/badge/LICENSE-MIT-green.svg?style=for-the-badge)](https://github.com/RVC-Boss/GPT-SoVITS/blob/main/LICENSE)
[![Huggingface](https://img.shields.io/badge/🤗%20-Spaces-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/GPT-SoVITS/tree/main)
[![Huggingface](https://img.shields.io/badge/🤗%20-Models%20Repo-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/GPT-SoVITS/tree/main)
[**English**](../../README.md) | [**中文简体**](../cn/README.md) | [**日本語**](./README.md)
@ -39,12 +39,19 @@ Windows ユーザーであればwin>=10 にてテスト済み、prezip 経
### Python と PyTorch のバージョン
- Python 3.9, PyTorch 2.0.1, CUDA 11
- Python 3.10.13, PyTorch 2.1.2, CUDA 12.3
- Python 3.9, PyTorch 2.3.0.dev20240122, macOS 14.3 (Apple Silicon, MPS)
- Python 3.9, PyTorch 2.3.0.dev20240122, macOS 14.3 (Apple silicon, GPU)
_注記: numba==0.56.4 は py<3.11 が必要です_
### Macユーザーへ
Macユーザーの方は、以下のコマンドを使用してインストールしてください。
如果あなたがMacユーザーである場合、GPUを使用してトレーニングおよび推論を行うために以下の条件を満たしていることを確認してください
- AppleシリコンまたはAMD GPUを搭載したMacコンピューター
- macOS 12.3以降
- `xcode-select --install`を実行してインストールされたXcodeコマンドラインツール
_その他のMacはCPUのみで推論を行うことができます。_
次に、以下のコマンドを使用してインストールします:
#### 環境作成
```bash
conda create -n GPTSoVits python=3.9
@ -56,7 +63,7 @@ pip install -r requirements.txt
pip uninstall torch torchaudio
pip3 install --pre torch torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu
```
_注記: UVR5を使用した前処理には、[元のプロジェクトGUIをダウンロード](https://github.com/Anjok07/ultimatevocalremovergui)して、操作にGPUを選択することを推奨します。さらに、Macを使用して推論する際にメモリリークの問題が発生する可能性がありますが、推論のwebUIを再起動することでメモリを解放できます。_
_注記: UVR5を使用して前処理を行う場合は、[オリジナルプロジェクトのGUIをダウンロード](https://github.com/Anjok07/ultimatevocalremovergui)して、「GPU Conversion」を選択することをお勧めします。さらに、特に推論時にメモリリークの問題が発生する可能性があります。推論webUIを再起動することでメモリを解放することができます。_
### Conda によるクイックインストール
```bash

View File

@ -1,4 +1,2 @@
@echo off
chcp 65001
"%~dp0\runtime\python.exe" "%~dp0\webui.py"
pause
runtime\python.exe webui.py
pause

4
go-webui.ps1 Normal file
View File

@ -0,0 +1,4 @@
$ErrorActionPreference = "SilentlyContinue"
chcp 65001
& "$PSScriptRoot\runtime\python.exe" "$PSScriptRoot\webui.py"
pause

View File

@ -1,135 +1,276 @@
{
">=3则使用对harvest音高识别的结果使用中值滤波数值为滤波半径使用可以削弱哑音": "Si es >=3, entonces use el resultado del reconocimiento de tono de 'harvest' con filtro de mediana, el valor es el radio del filtro, su uso puede debilitar el sonido sordo",
"A模型权重": "Un peso modelo para el modelo A.",
"A模型路径": "Modelo A ruta.",
"B模型路径": "Modelo B ruta.",
"很遗憾您这没有能用的显卡来支持您训练": "Lamentablemente, no tiene una tarjeta gráfica compatible para admitir su entrenamiento.",
"UVR5已开启": "UVR5 está habilitado",
"UVR5已关闭": "UVR5 está deshabilitado",
"本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责. <br>如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录<b>LICENSE</b>.": "Este software es de código abierto bajo la licencia MIT. El autor no tiene control sobre el software. El usuario que lo utilice o distribuya, y el que genere sonidos a partir del software, asume toda la responsabilidad. <br>Si no acepta estos términos, no puede utilizar ni hacer referencia a ningún código o archivo dentro del paquete de software. Consulte el archivo <b>LICENSE</b> en el directorio raíz para obtener más detalles.",
"0-前置数据集获取工具": "0-Herramienta de obtención de conjunto de datos previo",
"0a-UVR5人声伴奏分离&去混响去延迟工具": "0a-Herramienta de separación de voz y acompañamiento UVR5 y eliminación de reverberación y retardo",
"是否开启UVR5-WebUI": "¿Habilitar UVR5-WebUI?",
"UVR5进程输出信息": "Información de salida del proceso UVR5",
"0b-语音切分工具": "0b-Herramienta de división de voz",
"音频自动切分输入路径,可文件可文件夹": "Ruta de entrada para la división automática de audio, puede ser un archivo o una carpeta",
"切分后的子音频的输出根目录": "Directorio raíz de salida de los sub-audios después de la división",
"threshold:音量小于这个值视作静音的备选切割点": "umbral: puntos de corte alternativos considerados como silencio si el volumen es menor que este valor",
"min_length:每段最小多长,如果第一段太短一直和后面段连起来直到超过这个值": "min_length: duración mínima de cada segmento, si el primer segmento es demasiado corto, se conecta continuamente con los siguientes hasta que supera este valor",
"min_interval:最短切割间隔": "min_interval: intervalo mínimo de corte",
"hop_size:怎么算音量曲线,越小精度越大计算量越高(不是精度越大效果越好)": "hop_size: cómo calcular la curva de volumen, cuanto más pequeño, mayor precisión pero mayor carga computacional (mayor precisión no significa mejor rendimiento)",
"max_sil_kept:切完后静音最多留多长": "max_sil_kept: duración máxima del silencio después del corte",
"开启语音切割": "Habilitar la división de voz",
"终止语音切割": "Terminar la división de voz",
"max:归一化后最大值多少": "max: valor máximo después de la normalización",
"alpha_mix:混多少比例归一化后音频进来": "alpha_mix: proporción de mezcla de audio normalizado que entra",
"切割使用的进程数": "Número de procesos utilizados para la división",
"语音切割进程输出信息": "Información de salida del proceso de división de voz",
"0c-中文批量离线ASR工具": "0c-Herramienta de ASR en lote fuera de línea en chino",
"开启离线批量ASR": "¿Habilitar ASR en lote fuera de línea?",
"终止ASR进程": "Terminar el proceso ASR",
"批量ASR(中文only)输入文件夹路径": "Ruta de la carpeta de entrada para ASR en lote (solo en chino)",
"ASR进程输出信息": "Información de salida del proceso ASR",
"0d-语音文本校对标注工具": "0d-Herramienta de corrección y etiquetado de texto de voz",
"是否开启打标WebUI": "¿Habilitar la interfaz web de etiquetado?",
"打标数据标注文件路径": "Ruta del archivo de etiquetado de datos",
"打标工具进程输出信息": "Información de salida del proceso de la herramienta de etiquetado",
"1-GPT-SoVITS-TTS": "1-GPT-SoVITS-TTS",
"*实验/模型名": "*Nombre del experimento/modelo",
"显卡信息": "Información de la tarjeta gráfica",
"预训练的SoVITS-G模型路径": "Ruta del modelo SoVITS-G preentrenado",
"预训练的SoVITS-D模型路径": "Ruta del modelo SoVITS-D preentrenado",
"预训练的GPT模型路径": "Ruta del modelo GPT preentrenado",
"1A-训练集格式化工具": "1A-Herramienta de formateo del conjunto de datos de entrenamiento",
"输出logs/实验名目录下应有23456开头的文件和文件夹": "Debe haber archivos y carpetas que comiencen con 23456 en el directorio logs/nombre del experimento",
"*文本标注文件": "*Archivo de etiquetado de texto",
"*训练集音频文件目录": "*Directorio de archivos de audio de entrenamiento",
"训练集音频文件目录 拼接 list文件里波形对应的文件名。": "Directorio de archivos de audio de entrenamiento, concatenar con los nombres de archivo correspondientes en el archivo list.",
"1Aa-文本内容": "1Aa-Contenido del texto",
"GPU卡号以-分割,每个卡号一个进程": "Número de tarjeta GPU separado por '-', cada número de tarjeta es un proceso",
"预训练的中文BERT模型路径": "Ruta del modelo BERT en chino preentrenado",
"开启文本获取": "¿Habilitar la obtención de texto?",
"终止文本获取进程": "Terminar el proceso de obtención de texto",
"文本进程输出信息": "Información de salida del proceso de obtención de texto",
"1Ab-SSL自监督特征提取": "1Ab-Extracción de características auto-supervisada SSL",
"预训练的SSL模型路径": "Ruta del modelo SSL preentrenado",
"开启SSL提取": "¿Habilitar la extracción SSL?",
"终止SSL提取进程": "Terminar el proceso de extracción SSL",
"SSL进程输出信息": "Información de salida del proceso SSL",
"1Ac-语义token提取": "1Ac-Extracción de tokens semánticos",
"开启语义token提取": "¿Habilitar la extracción de tokens semánticos?",
"终止语义token提取进程": "Terminar el proceso de extracción de tokens semánticos",
"语义token提取进程输出信息": "Información de salida del proceso de extracción de tokens semánticos",
"1Aabc-训练集格式化一键三连": "1Aabc-Formateo del conjunto de datos de entrenamiento en un solo paso",
"开启一键三连": "¿Habilitar un solo paso de formateo?",
"终止一键三连": "Terminar el proceso de un solo paso de formateo",
"一键三连进程输出信息": "Información de salida del proceso de triple acción",
"1B-微调训练": "1B-Entrenamiento de ajuste fino",
"1Ba-SoVITS训练。用于分享的模型文件输出在SoVITS_weights下。": "1Ba-Entrenamiento de SoVITS. Los archivos de modelo para compartir se encuentran en SoVITS_weights.",
"每张显卡的batch_size": "Tamaño de lote por tarjeta gráfica",
"总训练轮数total_epoch不建议太高": "Número total de épocas de entrenamiento, no se recomienda demasiado alto",
"文本模块学习率权重": "Peso de la tasa de aprendizaje del módulo de texto",
"保存频率save_every_epoch": "Frecuencia de guardado (cada epoch)",
"是否仅保存最新的ckpt文件以节省硬盘空间": "¿Guardar solo el último archivo ckpt para ahorrar espacio en disco?",
"是否在每次保存时间点将最终小模型保存至weights文件夹": "¿Guardar el modelo final pequeño en la carpeta de pesos en cada punto de guardado?",
"开启SoVITS训练": "Iniciar entrenamiento de SoVITS",
"终止SoVITS训练": "Detener entrenamiento de SoVITS",
"SoVITS训练进程输出信息": "Información de salida del proceso de entrenamiento de SoVITS",
"1Bb-GPT训练。用于分享的模型文件输出在GPT_weights下。": "1Bb-Entrenamiento de GPT. Los archivos de modelo para compartir se encuentran en GPT_weights.",
"总训练轮数total_epoch": "Número total de épocas de entrenamiento",
"开启GPT训练": "Iniciar entrenamiento de GPT",
"终止GPT训练": "Detener entrenamiento de GPT",
"GPT训练进程输出信息": "Información de salida del proceso de entrenamiento de GPT",
"1C-推理": "1C-Inferencia",
"选择训练完存放在SoVITS_weights和GPT_weights下的模型。默认的一个是底模体验5秒Zero Shot TTS用。": "Seleccione el modelo almacenado en SoVITS_weights y GPT_weights después del entrenamiento. Uno de ellos es el modelo base, útil para experimentar con TTS de 5 segundos sin entrenamiento.",
"*GPT模型列表": "*Lista de modelos GPT",
"*SoVITS模型列表": "*Lista de modelos SoVITS",
"GPU卡号,只能填1个整数": "Número de tarjeta GPU, solo se puede ingresar un número entero",
"刷新模型路径": "Actualizar la ruta del modelo",
"是否开启TTS推理WebUI": "¿Habilitar la interfaz web de inferencia TTS?",
"TTS推理WebUI进程输出信息": "Información de salida del proceso de interfaz web de inferencia TTS",
"2-GPT-SoVITS-变声": "2-GPT-SoVITS-Cambio de voz",
"施工中,请静候佳音": "En construcción, por favor espere pacientemente",
"TTS推理进程已开启": "Proceso de inferencia TTS iniciado",
"TTS推理进程已关闭": "Proceso de inferencia TTS cerrado",
"打标工具WebUI已开启": "Interfaz web de la herramienta de etiquetado iniciada",
"打标工具WebUI已关闭": "Interfaz web de la herramienta de etiquetado cerrada",
"本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责. 如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录LICENSE.": "Este software es de código abierto bajo la licencia MIT. El autor no tiene control sobre el software. El usuario que lo utilice o distribuya, y el que genere sonidos a partir del software, asume toda la responsabilidad. Si no acepta estos términos, no puede utilizar ni hacer referencia a ningún código o archivo dentro del paquete de software. Consulte el archivo LICENSE en el directorio raíz para obtener más detalles.",
"*请上传并填写参考信息": "*Por favor, suba y complete la información de referencia",
"*请填写需要合成的目标文本": "*Por favor, complete el texto objetivo que necesita ser sintetizado",
"ASR任务开启%s": "Tarea ASR iniciada: %s",
"GPT训练完成": "Entrenamiento de GPT completado",
"GPT训练开始%s": "Entrenamiento de GPT iniciado: %s",
"SSL提取进程执行中": "Proceso de extracción SSL en ejecución",
"SSL提取进程结束": "Proceso de extracción SSL finalizado",
"SoVITS训练完成": "Entrenamiento de SoVITS completado",
"SoVITS训练开始%s": "Entrenamiento de SoVITS iniciado: %s",
"一键三连中途报错": "Error intermedio en triple acción",
"一键三连进程结束": "Proceso de triple acción finalizado",
"中文": "Chino",
"凑50字一切": "Todo para alcanzar las 50 palabras",
"凑五句一切": "Todo para alcanzar las cinco frases",
"切分后文本": "Texto después de la división",
"切割执行中": "División en proceso",
"切割结束": "División finalizada",
"参考音频的文本": "Texto de referencia del audio",
"参考音频的语种": "Idioma del audio de referencia",
"合成语音": "Síntesis de voz",
"后续将支持混合语种编码文本输入。": "En el futuro, se admitirá la entrada de texto con codificación de idiomas mixtos.",
"已有正在进行的ASR任务需先终止才能开启下一次任务": "Ya hay una tarea ASR en curso, debe detenerla antes de comenzar la siguiente tarea",
"已有正在进行的GPT训练任务需先终止才能开启下一次任务": "Ya hay una tarea de entrenamiento de GPT en curso, debe detenerla antes de comenzar la siguiente tarea",
"已有正在进行的SSL提取任务需先终止才能开启下一次任务": "Ya hay una tarea de extracción SSL en curso, debe detenerla antes de comenzar la siguiente tarea",
"已有正在进行的SoVITS训练任务需先终止才能开启下一次任务": "Ya hay una tarea de entrenamiento de SoVITS en curso, debe detenerla antes de comenzar la siguiente tarea",
"已有正在进行的一键三连任务,需先终止才能开启下一次任务": "Ya hay una tarea de triple acción en curso, debe detenerla antes de comenzar la siguiente tarea",
"已有正在进行的切割任务,需先终止才能开启下一次任务": "Ya hay una tarea de división en curso, debe detenerla antes de comenzar la siguiente tarea",
"已有正在进行的文本任务,需先终止才能开启下一次任务": "Ya hay una tarea de texto en curso, debe detenerla antes de comenzar la siguiente tarea",
"已有正在进行的语义token提取任务需先终止才能开启下一次任务": "Ya hay una tarea de extracción de tokens semánticos en curso, debe detenerla antes de comenzar la siguiente tarea",
"已终止ASR进程": "Proceso ASR terminado",
"已终止GPT训练": "Entrenamiento de GPT terminado",
"已终止SoVITS训练": "Entrenamiento de SoVITS terminado",
"已终止所有1a进程": "Se han terminado todos los procesos 1a",
"已终止所有1b进程": "Se han terminado todos los procesos 1b",
"已终止所有一键三连进程": "Se han terminado todos los procesos de triple acción",
"已终止所有切割进程": "Proceso de corte terminado",
"已终止所有语义token进程": "Proceso de extracción de tokens semánticos terminado",
"按中文句号。切": "Cortar según puntos en chino",
"文本切分工具。太长的文本合成出来效果不一定好,所以太长建议先切。合成会根据文本的换行分开合成再拼起来。": "Herramienta de división de texto. El resultado de la síntesis puede no ser bueno para textos demasiado largos, por lo que se recomienda dividirlos primero. La síntesis se realiza separando el texto según los saltos de línea y luego uniendo los fragmentos.",
"文本进程执行中": "Proceso de texto en ejecución",
"文本进程结束": "Proceso de texto finalizado",
"日文": "Japonés",
"英文": "Inglés",
"语义token提取进程执行中": "Proceso de extracción de tokens semánticos en ejecución",
"语义token提取进程结束": "Proceso de extracción de tokens semánticos finalizado",
"请上传参考音频": "Por favor, suba el audio de referencia",
"输入路径不存在": "La ruta de entrada no existe",
"输入路径存在但既不是文件也不是文件夹": "La ruta de entrada existe pero no es ni un archivo ni una carpeta",
"输出的语音": "Audio de salida",
"进度1a-done": "Progreso: 1a-hecho",
"进度1a-done, 1b-ing": "Progreso: 1a-hecho, 1b-en proceso",
"进度1a-ing": "Progreso: 1a-en proceso",
"进度1a1b-done": "Progreso: 1a1b-hecho",
"进度1a1b-done, 1cing": "Progreso: 1a1b-hecho, 1c-en proceso",
"进度all-done": "Progreso: todo hecho",
"需要合成的切分前文本": "Texto a sintetizar antes de la división",
"需要合成的文本": "Texto a sintetizar",
"需要合成的语种": "Idioma para la síntesis",
">=3则使用对harvest音高识别的结果使用中值滤波数值为滤波半径使用可以削弱哑音": "Si es >=3, se utiliza la mediana para filtrar los resultados del reconocimiento de altura tonal de harvest, el valor es el radio del filtro. Su uso puede debilitar los sonidos sordos.",
"A模型权重": "Peso del modelo A",
"A模型路径": "Ruta del modelo A",
"B模型路径": "Ruta del modelo B",
"E:\\语音音频+标注\\米津玄师\\src": "E:\\语音音频+标注\\米津玄师\\src",
"F0曲线文件, 可选, 一行一个音高, 代替默认F0及升降调": "Archivo de curva F0, opcional, un tono por línea, en lugar de F0 predeterminado y cambio de tono",
"F0曲线文件, 可选, 一行一个音高, 代替默认F0及升降调": "Archivo de curva F0, opcional, una línea por altura tonal, en lugar de F0 y cambio de tono predeterminados",
"Index Rate": "Tasa de índice",
"Onnx导出": "Exportar Onnx",
"Onnx输出路径": "Ruta de salida Onnx",
"Onnx导出": "Exportar a Onnx",
"Onnx输出路径": "Ruta de salida de Onnx",
"RVC模型路径": "Ruta del modelo RVC",
"ckpt处理": "Procesamiento de recibos",
"harvest进程数": "Número de procesos",
"index文件路径不可包含中文": "La ruta del archivo .index no debe contener caracteres chinos.",
"pth文件路径不可包含中文": "La ruta del archivo .pth no debe contener caracteres chinos.",
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Separe los números de identificación de la GPU con '-' al ingresarlos. Por ejemplo, '0-1-2' significa usar GPU 0, GPU 1 y GPU 2.",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Paso 1: Complete la configuración del experimento. Los datos del experimento se almacenan en el directorio 'logs', con cada experimento en una carpeta separada. La ruta del nombre del experimento debe ingresarse manualmente y debe contener la configuración del experimento, los registros y los archivos del modelo entrenado.",
"ckpt处理": "Procesamiento de ckpt",
"harvest进程数": "Número de procesos de harvest",
"index文件路径不可包含中文": "La ruta del archivo de índice no puede contener caracteres chinos",
"pth文件路径不可包含中文": "La ruta del archivo pth no puede contener caracteres chinos",
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Configuración de números de tarjeta rmvpe: usando - para separar los números de tarjeta de diferentes procesos de entrada, por ejemplo, 0-0-1 para ejecutar 2 procesos en la tarjeta 0 y 1 proceso en la tarjeta 1",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Paso 1: Completa la configuración del experimento. Los datos del experimento se encuentran en logs, cada experimento en una carpeta, debe ingresar manualmente la ruta del nombre del experimento, que incluye la configuración del experimento, el registro y los archivos del modelo entrenado.",
"step1:正在处理数据": "Paso 1: Procesando datos",
"step2:正在提取音高&正在提取特征": "Paso 2: Extracción del tono y extracción de características",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Paso 2a: Recorra automáticamente la carpeta de capacitación y corte y normalice todos los archivos de audio que se pueden decodificar en audio. Se generarán dos carpetas 'wav' en el directorio del experimento. Actualmente, solo se admite la capacitación de una sola persona.",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Paso 2b: Use la CPU para extraer el tono (si el modelo tiene guía de tono) y la GPU para extraer características (seleccione el número de tarjeta).",
"step3: 填写训练设置, 开始训练模型和索引": "Paso 3: Complete la configuración de entrenamiento y comience a entrenar el modelo y el índice.",
"step2:正在提取音高&正在提取特征": "Paso 2: Extrayendo tono y características",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Paso 2a: Recorre automáticamente todos los archivos en la carpeta de entrenamiento que se pueden decodificar en archivos de audio y realiza la normalización de segmentos. Genera 2 carpetas de audio en el directorio del experimento; por ahora, solo es compatible con el entrenamiento de una sola persona.",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Paso 2b: Extraer tono con CPU (si el modelo incluye tono) y extraer características con GPU (seleccionar número de tarjeta)",
"step3: 填写训练设置, 开始训练模型和索引": "Paso 3: Completa la configuración de entrenamiento y comienza a entrenar el modelo e indexar",
"step3a:正在训练模型": "Paso 3a: Entrenando el modelo",
"一键训练": "Entrenamiento con un clic",
"也可批量输入音频文件, 二选一, 优先读文件夹": "También se pueden importar varios archivos de audio. Si existe una ruta de carpeta, esta entrada se ignora.",
"人声伴奏分离批量处理, 使用UVR5模型。 <br>合格的文件夹路径格式举例: E:\\codes\\py39\\vits_vc_gpu\\白鹭霜华测试样例(去文件管理器地址栏拷就行了)。 <br>模型分为三类: <br>1、保留人声不带和声的音频选这个对主人声保留比HP5更好。内置HP2和HP3两个模型HP3可能轻微漏伴奏但对主人声保留比HP2稍微好一丁点 <br>2、仅保留主人声带和声的音频选这个对主人声可能有削弱。内置HP5一个模型 <br> 3、去混响、去延迟模型by FoxJoy<br>(1)MDX-Net(onnx_dereverb):对于双通道混响是最好的选择,不能去除单通道混响;<br>&emsp;(234)DeEcho:去除延迟效果。Aggressive比Normal去除得更彻底DeReverb额外去除混响可去除单声道混响但是对高频重的板式混响去不干净。<br>去混响/去延迟,附:<br>1、DeEcho-DeReverb模型的耗时是另外2个DeEcho模型的接近2倍<br>2、MDX-Net-Dereverb模型挺慢的<br>3、个人推荐的最干净的配置是先MDX-Net再DeEcho-Aggressive。": "Procesamiento por lotes para la separación de acompañamiento vocal utilizando el modelo UVR5.<br>Ejemplo de formato de ruta de carpeta válido: D:\\ruta\\a\\la\\carpeta\\de\\entrada (copiar desde la barra de direcciones del administrador de archivos).<br>El modelo se divide en tres categorías:<br>1. Preservar voces: Elija esta opción para audio sin armonías. Preserva las voces mejor que HP5. Incluye dos modelos incorporados: HP2 y HP3. HP3 puede filtrar ligeramente el acompañamiento pero conserva las voces un poco mejor que HP2.<br>2. Preservar solo voces principales: Elija esta opción para audio con armonías. Puede debilitar las voces principales. Incluye un modelo incorporado: HP5.<br>3. Modelos de des-reverberación y des-retardo (por FoxJoy):<br>(1) MDX-Net: La mejor opción para la eliminación de reverberación estéreo pero no puede eliminar la reverberación mono;<br>&emsp;(234) DeEcho: Elimina efectos de retardo. El modo Agresivo elimina más a fondo que el modo Normal. DeReverb adicionalmente elimina la reverberación y puede eliminar la reverberación mono, pero no muy efectivamente para contenido de alta frecuencia fuertemente reverberado.<br>Notas de des-reverberación/des-retardo:<br>1. El tiempo de procesamiento para el modelo DeEcho-DeReverb es aproximadamente el doble que los otros dos modelos DeEcho.<br>2. El modelo MDX-Net-Dereverb es bastante lento.<br>3. La configuración más limpia recomendada es aplicar primero MDX-Net y luego DeEcho-Agresivo.",
"以-分隔输入使用的卡号, 例如 0-1-2 使用卡0和卡1和卡2": "Separe los números de identificación de la GPU con '-' al ingresarlos. Por ejemplo, '0-1-2' significa usar GPU 0, GPU 1 y GPU 2.",
"伴奏人声分离&去混响&去回声": "Separación de voz acompañante & eliminación de reverberación & eco",
"使用模型采样率": "使用模型采样率",
"使用设备采样率": "使用设备采样率",
"保存名": "Guardar nombre",
"保存的文件名, 默认空为和源文件同名": "Nombre del archivo que se guardará, el valor predeterminado es el mismo que el nombre del archivo de origen",
"保存的模型名不带后缀": "Nombre del modelo guardado sin extensión.",
"保存频率save_every_epoch": "Frecuencia de guardado (save_every_epoch)",
"保护清辅音和呼吸声防止电音撕裂等artifact拉满0.5不开启,调低加大保护力度但可能降低索引效果": "Proteger las consonantes claras y la respiración, prevenir artefactos como la distorsión de sonido electrónico, 0.5 no está activado, reducir aumentará la protección pero puede reducir el efecto del índice",
"也可批量输入音频文件, 二选一, 优先读文件夹": "También se pueden ingresar archivos de audio por lotes, seleccionar uno, prioridad para leer carpetas",
"以-分隔输入使用的卡号, 例如 0-1-2 使用卡0和卡1和卡2": "Usar - para separar los números de tarjeta utilizados como entrada, por ejemplo, 0-1-2 para usar las tarjetas 0, 1 y 2",
"伴奏人声分离&去混响&去回声": "Separación de acompañamiento y voz principal y eliminación de reverberación y eco",
"使用模型采样率": "Usar tasa de muestreo del modelo",
"使用设备采样率": "Usar tasa de muestreo del dispositivo",
"保存名": "Nombre de guardado",
"保存的文件名, 默认空为和源文件同名": "Nombre de archivo guardado, vacío por defecto para tener el mismo nombre que el archivo fuente",
"保存的模型名不带后缀": "Nombre del modelo guardado sin extensión",
"保护清辅音和呼吸声防止电音撕裂等artifact拉满0.5不开启,调低加大保护力度但可能降低索引效果": "Proteger las consonantes claras y los sonidos de respiración, evitando artefactos como el desgarro eléctrico. No activar al tirar hasta 0.5, reducir para aumentar la protección, pero puede disminuir la efectividad del índice",
"修改": "Modificar",
"修改模型信息(仅支持weights文件夹下提取的小模型文件)": "Modificar la información del modelo (solo admite archivos de modelos pequeños extraídos en la carpeta weights)",
"修改模型信息(仅支持weights文件夹下提取的小模型文件)": "Modificar información del modelo (solo compatible con archivos de modelo pequeños extraídos en la carpeta weights)",
"停止音频转换": "Detener la conversión de audio",
"全流程结束!": "¡Todo el proceso ha terminado!",
"刷新音色列表和索引路径": "Actualizar la lista de modelos e índice de rutas",
"全流程结束!": Proceso completo!",
"刷新音色列表和索引路径": "Actualizar lista de tonos e índice de ruta",
"加载模型": "Cargar modelo",
"加载预训练底模D路径": "Cargue la ruta del modelo D base pre-entrenada.",
"加载预训练底模G路径": "Cargue la ruta del modelo G base pre-entrenada.",
"单次推理": "单次推理",
"卸载音色省显存": "Descargue la voz para ahorrar memoria GPU",
"变调(整数, 半音数量, 升八度12降八度-12)": "Cambio de tono (entero, número de semitonos, subir una octava +12 o bajar una octava -12)",
"后处理重采样至最终采样率0为不进行重采样": "Remuestreo posterior al proceso a la tasa de muestreo final, 0 significa no remuestrear",
"加载预训练底模D路径": "Cargar ruta del modelo D preentrenado",
"加载预训练底模G路径": "Cargar ruta del modelo G preentrenado",
"单次推理": "Inferencia única",
"卸载音色省显存": "Descargar tono para ahorrar memoria de video",
"变调(整数, 半音数量, 升八度12降八度-12)": "Cambiar tono (número entero, cantidad de semitonos, subir octava 12 bajar octava -12)",
"后处理重采样至最终采样率0为不进行重采样": "Reprocesar y remuestrear a la tasa de muestreo final, 0 para no remuestrear",
"否": "No",
"启用相位声码器": "启用相位声码器",
"启用相位声码器": "Activar codificador de fase",
"响应阈值": "Umbral de respuesta",
"响度因子": "factor de sonoridad",
"响度因子": "Factor de sonoridad",
"处理数据": "Procesar datos",
"导出Onnx模型": "Exportar modelo Onnx",
"导出文件格式": "Formato de archivo de exportación",
"常见问题解答": "Preguntas frecuentes",
"常规设置": "Configuración general",
"开始音频转换": "Iniciar conversión de audio",
"很遗憾您这没有能用的显卡来支持您训练": "Lamentablemente, no tiene una tarjeta gráfica adecuada para soportar su entrenamiento",
"性能设置": "Configuración de rendimiento",
"总训练轮数total_epoch": "Total de épocas de entrenamiento (total_epoch)",
"批量推理": "批量推理",
"批量转换, 输入待转换音频文件夹, 或上传多个音频文件, 在指定文件夹(默认opt)下输出转换的音频. ": "Conversión por lotes, ingrese la carpeta que contiene los archivos de audio para convertir o cargue varios archivos de audio. El audio convertido se emitirá en la carpeta especificada (opción predeterminada).",
"指定输出主人声文件夹": "Especifique la carpeta de salida para la voz principal",
"批量推理": "Inferencia por lotes",
"批量转换, 输入待转换音频文件夹, 或上传多个音频文件, 在指定文件夹(默认opt)下输出转换的音频. ": "Conversión por lotes, ingrese la carpeta de audio a convertir o cargue varios archivos de audio, la salida se realiza en la carpeta especificada (opt por defecto). ",
"指定输出主人声文件夹": "Especificar carpeta de salida de voz principal",
"指定输出文件夹": "Especificar carpeta de salida",
"指定输出非主人声文件夹": "Especifique la carpeta de salida para las voces no principales",
"推理时间(ms):": "Inferir tiempo (ms):",
"推理音色": "inferencia de voz",
"指定输出非主人声文件夹": "Especificar carpeta de salida de no voz principal",
"推理时间(ms):": "Tiempo de inferencia (ms):",
"推理音色": "Tono de inferencia",
"提取": "Extraer",
"提取音高和处理数据使用的CPU进程数": "Número de procesos de CPU utilizados para extraer el tono y procesar los datos",
"提取音高和处理数据使用的CPU进程数": "Número de procesadores de CPU utilizados para extraer tono y procesar datos",
"是": "Sí",
"是否仅保存最新的ckpt文件以节省硬盘空间": "Guardar solo el archivo ckpt más reciente para ahorrar espacio en disco",
"是否在每次保存时间点将最终小模型保存至weights文件夹": "Guardar pequeño modelo final en la carpeta 'weights' en cada punto de guardado",
"是否缓存所有训练集至显存. 10min以下小数据可缓存以加速训练, 大数据缓存会炸显存也加不了多少速": "Si almacenar en caché todos los conjuntos de entrenamiento en la memoria de la GPU. Los conjuntos de datos pequeños (menos de 10 minutos) se pueden almacenar en caché para acelerar el entrenamiento, pero el almacenamiento en caché de conjuntos de datos grandes puede causar errores de memoria en la GPU y no aumenta la velocidad de manera significativa.",
"显卡信息": "información de la GPU",
"本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责. <br>如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录<b>LICENSE</b>.": "Este software es de código abierto bajo la licencia MIT, el autor no tiene ningún control sobre el software, y aquellos que usan el software y difunden los sonidos exportados por el software son los únicos responsables.<br>Si no está de acuerdo con esta cláusula , no puede utilizar ni citar ningún código ni archivo del paquete de software Consulte el directorio raíz <b>Agreement-LICENSE.txt</b> para obtener más información.",
"是否缓存所有训练集至显存. 10min以下小数据可缓存以加速训练, 大数据缓存会炸显存也加不了多少速": "Almacenar en caché todos los conjuntos de entrenamiento en la memoria de video. Pequeños conjuntos de datos menores a 10 minutos pueden almacenarse en caché para acelerar el entrenamiento; almacenar en caché grandes conjuntos de datos puede saturar la memoria de video y no acelerará mucho.",
"查看": "Ver",
"查看模型信息(仅支持weights文件夹下提取的小模型文件)": "Ver información del modelo (solo aplicable a archivos de modelos pequeños extraídos de la carpeta 'pesos')",
"检索特征占比": "Proporción de función de búsqueda",
"查看模型信息(仅支持weights文件夹下提取的小模型文件)": "Ver información del modelo (solo compatible con archivos pequeños extraídos en la carpeta weights)",
"检索特征占比": "Proporción de características de búsqueda",
"模型": "Modelo",
"模型推理": "inferencia del modelo",
"模型提取(输入logs文件夹下大文件模型路径),适用于训一半不想训了模型没有自动提取保存小文件模型,或者想测试中间模型的情况": "Extracción de modelo (ingrese la ruta de un archivo de modelo grande en la carpeta 'logs'), aplicable cuando desea extraer un archivo de modelo pequeño después de entrenar a mitad de camino y no se guardó automáticamente, o cuando desea probar un modelo intermedio",
"模型是否带音高指导": "Si el modelo tiene guía de tono.",
"模型是否带音高指导(唱歌一定要, 语音可以不要)": "Si el modelo tiene guía de tono (necesaria para cantar, pero no para hablar)",
"模型是否带音高指导,1是0否": "Si el modelo tiene guía de tono, 1 para sí, 0 para no",
"模型推理": "Inferencia de modelo",
"模型提取(输入logs文件夹下大文件模型路径),适用于训一半不想训了模型没有自动提取保存小文件模型,或者想测试中间模型的情况": "Extracción de modelo (ingresar la ruta del modelo grande en la carpeta logs), útil cuando se quiere dejar de entrenar a la mitad y el modelo no ha extraído automáticamente un modelo pequeño guardado, o para probar la situación del modelo intermedio",
"模型是否带音高指导": "¿El modelo incluye guía de altura tonal?",
"模型是否带音高指导(唱歌一定要, 语音可以不要)": "¿El modelo incluye guía de altura tonal? (Necesario para cantar, opcional para voz)",
"模型是否带音高指导,1是0否": "¿El modelo incluye guía de altura tonal? 1 para sí, 0 para no",
"模型版本型号": "Versión y modelo del modelo",
"模型融合, 可用于测试音色融合": "Fusión de modelos, se puede utilizar para fusionar diferentes voces",
"模型融合, 可用于测试音色融合": "Fusión de modelos, útil para probar la mezcla de tonos",
"模型路径": "Ruta del modelo",
"每张显卡的batch_size": "Tamaño del lote (batch_size) por tarjeta gráfica",
"淡入淡出长度": "Duración del fundido de entrada/salida",
"淡入淡出长度": "Longitud de desvanecimiento",
"版本": "Versión",
"特征提取": "Extracción de características",
"特征检索库文件路径,为空则使用下拉的选择结果": "Ruta del archivo de la biblioteca de características, si está vacío, se utilizará el resultado de la selección desplegable",
"男转女推荐+12key, 女转男推荐-12key, 如果音域爆炸导致音色失真也可以自己调整到合适音域. ": "Tecla +12 recomendada para conversión de voz de hombre a mujer, tecla -12 para conversión de voz de mujer a hombre. Si el rango de tono es demasiado amplio y causa distorsión, ajústelo usted mismo a un rango adecuado.",
"特征检索库文件路径,为空则使用下拉的选择结果": "Ruta del archivo de la biblioteca de búsqueda de características, si está vacío, se utiliza el resultado seleccionado en el menú desplegable",
"男转女推荐+12key, 女转男推荐-12key, 如果音域爆炸导致音色失真也可以自己调整到合适音域. ": "Recomendación para cambiar de hombre a mujer +12 teclas, cambiar de mujer a hombre -12 teclas. Si la amplitud del rango tonal causa distorsión del tono, también puede ajustarse manualmente al rango tonal adecuado. ",
"目标采样率": "Tasa de muestreo objetivo",
"算法延迟(ms):": "算法延迟(ms):",
"自动检测index路径,下拉式选择(dropdown)": "Detección automática de la ruta del índice, selección desplegable (dropdown)",
"算法延迟(ms):": "Retardo del algoritmo (ms):",
"自动检测index路径,下拉式选择(dropdown)": "Detectar automáticamente la ruta del índice, seleccionar en menú desplegable",
"融合": "Fusión",
"要改的模型信息": "Información del modelo a modificar",
"要置入的模型信息": "Información del modelo a colocar.",
"训练": "Entrenamiento",
"训练模型": "Entrenar Modelo",
"训练特征索引": "Índice de características",
"训练结束, 您可查看控制台训练日志或实验文件夹下的train.log": "Entrenamiento finalizado, puede ver el registro de entrenamiento en la consola o en el archivo train.log en la carpeta del experimento",
"请指定说话人id": "ID del modelo",
"请选择index文件": "Seleccione el archivo .index",
"请选择pth文件": "Seleccione el archivo .pth",
"请选择说话人id": "Seleccione una identificación de altavoz",
"转换": "Conversión",
"输入实验名": "Ingrese el nombre del modelo",
"输入待处理音频文件夹路径": "Ingrese la ruta a la carpeta de audio que se procesará",
"输入待处理音频文件夹路径(去文件管理器地址栏拷就行了)": "Ingrese la ruta a la carpeta de audio que se procesará (simplemente cópiela desde la barra de direcciones del administrador de archivos)",
"输入待处理音频文件路径(默认是正确格式示例)": "Ingrese la ruta del archivo del audio que se procesará (el formato predeterminado es el ejemplo correcto)",
"输入源音量包络替换输出音量包络融合比例越靠近1越使用输出包络": "Proporción de fusión para reemplazar el sobre de volumen de entrada con el sobre de volumen de salida, cuanto más cerca de 1, más se utiliza el sobre de salida",
"输入监听": "输入监听",
"输入训练文件夹路径": "Introduzca la ruta de la carpeta de entrenamiento",
"要改的模型信息": "Información del modelo a cambiar",
"要置入的模型信息": "Información del modelo a insertar",
"训练": "Entrenar",
"训练模型": "Entrenar modelo",
"训练特征索引": "Entrenar índice de características",
"训练结束, 您可查看控制台训练日志或实验文件夹下的train.log": "Entrenamiento terminado, puede ver registros de entrenamiento en la consola o en el archivo train.log en la carpeta del experimento",
"请指定说话人id": "Por favor, especifique el ID del hablante",
"请选择index文件": "Seleccione el archivo index, por favor",
"请选择pth文件": "Seleccione el archivo pth, por favor",
"请选择说话人id": "Seleccione el ID del hablante, por favor",
"转换": "Convertir",
"输入实验名": "Ingrese el nombre del experimento",
"输入待处理音频文件夹路径": "Ingrese la ruta de la carpeta de audio a procesar",
"输入待处理音频文件夹路径(去文件管理器地址栏拷就行了)": "Ingrese la ruta de la carpeta de audio a procesar (puede copiarla desde la barra de direcciones del administrador de archivos)",
"输入待处理音频文件路径(默认是正确格式示例)": "Ingrese la ruta del archivo de audio a procesar (el formato predeterminado es un ejemplo correcto)",
"输入源音量包络替换输出音量包络融合比例越靠近1越使用输出包络": "Ingrese la proporción de fusión para reemplazar el sobre de volumen de origen con el sobre de volumen de salida; cuanto más cercano a 1, más se utiliza el sobre de salida",
"输入监听": "Entrada de monitoreo",
"输入训练文件夹路径": "Ingrese la ruta de la carpeta de entrenamiento",
"输入设备": "Dispositivo de entrada",
"输入降噪": "Reducción de ruido de entrada",
"输入降噪": "Entrada de reducción de ruido",
"输出信息": "Información de salida",
"输出变声": "输出变声",
"输出变声": "Salida de cambio de voz",
"输出设备": "Dispositivo de salida",
"输出降噪": "Reducción de ruido de salida",
"输出音频(右下角三个点,点了可以下载)": "Salida de audio (haga clic en los tres puntos en la esquina inferior derecha para descargar)",
"选择.index文件": "Seleccione el archivo .index",
"选择.pth文件": "Seleccione el archivo .pth",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU": "Seleccione el algoritmo de extracción de tono, las voces de entrada se pueden acelerar con pm, harvest tiene buenos graves pero es muy lento, crepe es bueno pero se come las GPUs",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU,rmvpe效果最好且微吃GPU": "Seleccione el algoritmo de extracción de tono, use 'pm' para acelerar la entrada de canto, 'harvest' es bueno para los graves pero extremadamente lento, 'crepe' tiene buenos resultados pero consume GPU",
"选择音高提取算法:输入歌声可用pm提速,高质量语音但CPU差可用dio提速,harvest质量更好但慢,rmvpe效果最好且微吃CPU/GPU": "Seleccione el algoritmo de extracción de tono: la canción de entrada se puede acelerar con pm, la voz de alta calidad pero CPU pobre se puede acelerar con dio, harvest es mejor pero más lento, rmvpe es el mejor y se come ligeramente la CPU/GPU",
"采样率:": "采样率:",
"输出降噪": "Salida de reducción de ruido",
"输出音频(右下角三个点,点了可以下载)": "Salida de audio (los tres puntos en la esquina inferior derecha, haga clic para descargar)",
"选择.index文件": "Seleccione el archivo .index, por favor",
"选择.pth文件": "Seleccione el archivo .pth, por favor",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU": "Seleccione el algoritmo de extracción de tono; para voz, pm acelera, harvest es lento pero tiene buenos bajos, crepe tiene buen efecto pero consume GPU",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU,rmvpe效果最好且微吃GPU": "Seleccione el algoritmo de extracción de tono; para voz, pm acelera, harvest es lento pero tiene buenos bajos, crepe tiene buen efecto pero consume GPU, rmvpe tiene el mejor efecto y consume poco GPU",
"选择音高提取算法:输入歌声可用pm提速,高质量语音但CPU差可用dio提速,harvest质量更好但慢,rmvpe效果最好且微吃CPU/GPU": "Seleccione el algoritmo de extracción de tono: para voz, pm acelera con buena calidad de audio pero CPU deficiente, dio acelera pero harvest tiene mejor calidad aunque es más lento, rmvpe tiene el mejor efecto y consume poco CPU/GPU",
"采样率:": "Tasa de muestreo:",
"采样长度": "Longitud de muestreo",
"重载设备列表": "Actualizar lista de dispositivos",
"音调设置": "Ajuste de tono",
"音频设备(请使用同种类驱动)": "Dispositivo de audio (utilice el mismo tipo de controlador)",
"重载设备列表": "Recargar lista de dispositivos",
"音调设置": "Configuración de tono",
"音频设备(请使用同种类驱动)": "Dispositivo de audio (utilice controladores del mismo tipo)",
"音高算法": "Algoritmo de tono",
"额外推理时长": "Tiempo de inferencia adicional"
"额外推理时长": "Tiempo adicional de inferencia"
}

View File

@ -1,135 +1,276 @@
{
">=3则使用对harvest音高识别的结果使用中值滤波数值为滤波半径使用可以削弱哑音": "Se >=3: applica il filtro mediano ai risultati del pitch raccolto. ",
"A模型权重": "Peso (w) per il modello A:",
"A模型路径": "Percorso per il modello A:",
"B模型路径": "Percorso per il modello B:",
"很遗憾您这没有能用的显卡来支持您训练": "Purtroppo non hai una scheda grafica utilizzabile per supportare il tuo addestramento",
"UVR5已开启": "UVR5 è attivato",
"UVR5已关闭": "UVR5 è disattivato",
"本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责. <br>如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录<b>LICENSE</b>.": "Questo software è open source con licenza MIT. L'autore non ha alcun controllo sul software. L'utente che utilizza il software o diffonde i suoni derivati dal software ne è responsabile. <br>Se non accetti questi termini, non puoi utilizzare o citare alcun codice o file all'interno del pacchetto software. Vedi la cartella principale<b>LICENSE</b> per i dettagli.",
"0-前置数据集获取工具": "0-Strumento di acquisizione del dataset preliminare",
"0a-UVR5人声伴奏分离&去混响去延迟工具": "0a-Strumento di separazione voce e accompagnamento UVR5 & Rimozione riverbero e ritardo",
"是否开启UVR5-WebUI": "Attivare UVR5-WebUI",
"UVR5进程输出信息": "Informazioni sull'output del processo UVR5",
"0b-语音切分工具": "0b-Strumento di segmentazione vocale",
"音频自动切分输入路径,可文件可文件夹": "Percorso di input per la segmentazione automatica dell'audio, può essere un file o una cartella",
"切分后的子音频的输出根目录": "Directory radice di output per gli audio segmentati",
"threshold:音量小于这个值视作静音的备选切割点": "threshold: Punto di taglio alternativo considerato silenzioso se il volume è inferiore a questo valore",
"min_length:每段最小多长,如果第一段太短一直和后面段连起来直到超过这个值": "min_length: Lunghezza minima di ogni segmento. Se il primo segmento è troppo corto, verrà unito agli segmenti successivi fino a superare questo valore",
"min_interval:最短切割间隔": "min_interval: Intervallo minimo di taglio",
"hop_size:怎么算音量曲线,越小精度越大计算量越高(不是精度越大效果越好)": "hop_size: Come calcolare la curva del volume. Più piccolo è, maggiore è la precisione ma aumenta la complessità computazionale (non significa che una maggiore precisione dà risultati migliori)",
"max_sil_kept:切完后静音最多留多长": "max_sil_kept: Massima durata del silenzio dopo il taglio",
"开启语音切割": "Attivare la segmentazione vocale",
"终止语音切割": "Terminare la segmentazione vocale",
"max:归一化后最大值多少": "max: Massimo valore dopo la normalizzazione",
"alpha_mix:混多少比例归一化后音频进来": "alpha_mix: Quanta proporzione dell'audio normalizzato deve essere miscelata",
"切割使用的进程数": "Numero di processi utilizzati per il taglio",
"语音切割进程输出信息": "Informazioni sull'output del processo di segmentazione vocale",
"0c-中文批量离线ASR工具": "0c-Strumento di ASR offline batch in cinese",
"开启离线批量ASR": "Attivare ASR offline batch",
"终止ASR进程": "Terminare il processo ASR",
"批量ASR(中文only)输入文件夹路径": "Percorso della cartella di input per ASR offline batch (solo cinese)",
"ASR进程输出信息": "Informazioni sull'output del processo ASR",
"0d-语音文本校对标注工具": "0d-Strumento di correzione e annotazione testo vocale",
"是否开启打标WebUI": "Attivare l'interfaccia utente Web di annotazione",
"打标数据标注文件路径": "Percorso del file di annotazione dei dati contrassegnati",
"打标工具进程输出信息": "Informazioni sull'output del processo di annotazione",
"1-GPT-SoVITS-TTS": "1-GPT-SoVITS-TTS",
"*实验/模型名": "*Nome dell'esperimento/modello",
"显卡信息": "Informazioni sulla scheda grafica",
"预训练的SoVITS-G模型路径": "Percorso del modello preaddestrato SoVITS-G",
"预训练的SoVITS-D模型路径": "Percorso del modello preaddestrato SoVITS-D",
"预训练的GPT模型路径": "Percorso del modello preaddestrato GPT",
"1A-训练集格式化工具": "1A-Strumento di formattazione del set di addestramento",
"输出logs/实验名目录下应有23456开头的文件和文件夹": "Nella cartella logs/nome dell'esperimento dovrebbero esserci file e cartelle che iniziano con 23456",
"*文本标注文件": "*File di annotazione del testo",
"*训练集音频文件目录": "*Directory dei file audio del set di addestramento",
"训练集音频文件目录 拼接 list文件里波形对应的文件名。": "Directory dei file audio del set di addestramento, concatenare il nome del file corrispondente nella lista",
"1Aa-文本内容": "1Aa-Contenuto del testo",
"GPU卡号以-分割,每个卡号一个进程": "Numero di GPU separati da '-'; ogni numero corrisponde a un processo",
"预训练的中文BERT模型路径": "Percorso del modello BERT cinese preaddestrato",
"开启文本获取": "Attivare l'estrazione del testo",
"终止文本获取进程": "Terminare il processo di estrazione del testo",
"文本进程输出信息": "Informazioni sull'output del processo di estrazione del testo",
"1Ab-SSL自监督特征提取": "1Ab-Estrazione di caratteristiche auto-supervisionata SSL",
"预训练的SSL模型路径": "Percorso del modello SSL preaddestrato",
"开启SSL提取": "Attivare l'estrazione SSL",
"终止SSL提取进程": "Terminare il processo di estrazione SSL",
"SSL进程输出信息": "Informazioni sull'output del processo SSL",
"1Ac-语义token提取": "1Ac-Estrazione del token semantico",
"开启语义token提取": "Attivare l'estrazione del token semantico",
"终止语义token提取进程": "Terminare il processo di estrazione del token semantico",
"语义token提取进程输出信息": "Informazioni sull'output del processo di estrazione del token semantico",
"1Aabc-训练集格式化一键三连": "1Aabc-Strumento di formattazione del set di addestramento con tre passaggi",
"开启一键三连": "Attivare la formattazione con tre passaggi",
"终止一键三连": "Terminare la formattazione con tre passaggi",
"一键三连进程输出信息": "Informazioni sull'output del processo di 'One Click Three Connect'",
"1B-微调训练": "1B-Allenamento di affinamento",
"1Ba-SoVITS训练。用于分享的模型文件输出在SoVITS_weights下。": "1Ba-Allenamento di SoVITS. I file del modello destinati alla condivisione sono salvati in SoVITS_weights.",
"每张显卡的batch_size": "Batch size per ogni scheda grafica",
"总训练轮数total_epoch不建议太高": "Numero totale di epoche di addestramento, non raccomandato troppo alto",
"文本模块学习率权重": "Peso del tasso di apprendimento del modulo di testo",
"保存频率save_every_epoch": "Frequenza di salvataggio ogni epoca",
"是否仅保存最新的ckpt文件以节省硬盘空间": "Salvare solo il file ckpt più recente per risparmiare spazio su disco",
"是否在每次保存时间点将最终小模型保存至weights文件夹": "Salvare il modello finale più piccolo nella cartella weights ad ogni punto di salvataggio",
"开启SoVITS训练": "Attivare l'allenamento di SoVITS",
"终止SoVITS训练": "Terminare l'allenamento di SoVITS",
"SoVITS训练进程输出信息": "Informazioni sull'output del processo di allenamento di SoVITS",
"1Bb-GPT训练。用于分享的模型文件输出在GPT_weights下。": "1Bb-Allenamento di GPT. I file del modello destinati alla condivisione sono salvati in GPT_weights.",
"总训练轮数total_epoch": "Numero totale di epoche di addestramento",
"开启GPT训练": "Attivare l'allenamento di GPT",
"终止GPT训练": "Terminare l'allenamento di GPT",
"GPT训练进程输出信息": "Informazioni sull'output del processo di allenamento di GPT",
"1C-推理": "1C-Inferenza",
"选择训练完存放在SoVITS_weights和GPT_weights下的模型。默认的一个是底模体验5秒Zero Shot TTS用。": "Scegli il modello salvato in SoVITS_weights e GPT_weights dopo l'addestramento. Uno di default è il modello di base, utilizzato per l'esperienza di Zero Shot TTS in 5 secondi.",
"*GPT模型列表": "*Lista dei modelli GPT",
"*SoVITS模型列表": "*Lista dei modelli SoVITS",
"GPU卡号,只能填1个整数": "Numero della scheda grafica, può essere inserito solo un numero intero",
"刷新模型路径": "Aggiorna il percorso del modello",
"是否开启TTS推理WebUI": "Attivare l'interfaccia utente Web per l'inferenza TTS",
"TTS推理WebUI进程输出信息": "Informazioni sull'output del processo dell'interfaccia utente Web per l'inferenza TTS",
"2-GPT-SoVITS-变声": "2-GPT-SoVITS-Voce modificata",
"施工中,请静候佳音": "In costruzione, attendi pazientemente le buone notizie",
"TTS推理进程已开启": "Il processo di inferenza TTS è stato avviato",
"TTS推理进程已关闭": "Il processo di inferenza TTS è stato chiuso",
"打标工具WebUI已开启": "L'interfaccia utente Web dello strumento di annotazione è stata avviata",
"打标工具WebUI已关闭": "L'interfaccia utente Web dello strumento di annotazione è stata chiusa",
"本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责. 如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录LICENSE.": "Questo software è open source con licenza MIT. L'autore non ha alcun controllo sul software. L'utente che utilizza il software o diffonde i suoni derivati dal software ne è responsabile. Se non accetti questi termini, non puoi utilizzare o citare alcun codice o file all'interno del pacchetto software. Vedi la cartella principale LICENSE per i dettagli.",
"*请上传并填写参考信息": "*Carica e compila le informazioni di riferimento",
"*请填写需要合成的目标文本": "*Compila il testo di destinazione da sintetizzare",
"ASR任务开启%s": "Attività ASR avviata: %s",
"GPT训练完成": "Allenamento di GPT completato",
"GPT训练开始%s": "Inizio dell'allenamento di GPT: %s",
"SSL提取进程执行中": "Processo di estrazione SSL in corso",
"SSL提取进程结束": "Processo di estrazione SSL completato",
"SoVITS训练完成": "Allenamento di SoVITS completato",
"SoVITS训练开始%s": "Inizio dell'allenamento di SoVITS: %s",
"一键三连中途报错": "Errore durante 'One Click Three Connect'",
"一键三连进程结束": "Processo di 'One Click Three Connect' completato",
"中文": "Cinese",
"凑50字一切": "Riempire con 50 caratteri per tutto",
"凑五句一切": "Riempire con cinque frasi per tutto",
"切分后文本": "Testo dopo il taglio",
"切割执行中": "Taglio in corso",
"切割结束": "Taglio completato",
"参考音频的文本": "Testo dell'audio di riferimento",
"参考音频的语种": "Lingua dell'audio di riferimento",
"合成语音": "Sintesi vocale",
"后续将支持混合语种编码文本输入。": "In futuro sarà supportata l'input di testi con codifica mista di lingue.",
"已有正在进行的ASR任务需先终止才能开启下一次任务": "È già in corso un'attività ASR. Devi interromperla prima di avviare una nuova attività.",
"已有正在进行的GPT训练任务需先终止才能开启下一次任务": "È già in corso un'attività di allenamento di GPT. Devi interromperla prima di avviare una nuova attività.",
"已有正在进行的SSL提取任务需先终止才能开启下一次任务": "È già in corso un'attività di estrazione SSL. Devi interromperla prima di avviare una nuova attività.",
"已有正在进行的SoVITS训练任务需先终止才能开启下一次任务": "È già in corso un'attività di allenamento di SoVITS. Devi interromperla prima di avviare una nuova attività.",
"已有正在进行的一键三连任务,需先终止才能开启下一次任务": "È già in corso un'attività di 'One Click Three Connect'. Devi interromperla prima di avviare una nuova attività.",
"已有正在进行的切割任务,需先终止才能开启下一次任务": "È già in corso un'attività di taglio. Devi interromperla prima di avviare una nuova attività.",
"已有正在进行的文本任务,需先终止才能开启下一次任务": "È già in corso un'attività di testo. Devi interromperla prima di avviare una nuova attività.",
"已有正在进行的语义token提取任务需先终止才能开启下一次任务": "È già in corso un'attività di estrazione di token semantici. Devi interromperla prima di avviare una nuova attività.",
"已终止ASR进程": "Il processo ASR è stato terminato",
"已终止GPT训练": "L'allenamento di GPT è stato terminato",
"已终止SoVITS训练": "Allenamento SoVITS terminato",
"已终止所有1a进程": "Processi 1a terminati",
"已终止所有1b进程": "Processi 1b terminati",
"已终止所有一键三连进程": "Processi One Click Three Connect terminati",
"已终止所有切割进程": "Processi di taglio terminati",
"已终止所有语义token进程": "Processi di estrazione token semantici terminati",
"按中文句号。切": "Taglia secondo il punto cinese.",
"文本切分工具。太长的文本合成出来效果不一定好,所以太长建议先切。合成会根据文本的换行分开合成再拼起来。": "Strumento di divisione del testo. I testi troppo lunghi potrebbero non avere un buon effetto di sintesi, quindi è consigliabile dividerli prima della sintesi. La sintesi verrà separata in base ai ritorni a capo nel testo e successivamente ricomposta.",
"文本进程执行中": "Processo di testo in esecuzione",
"文本进程结束": "Processo di testo terminato",
"日文": "Giapponese",
"英文": "Inglese",
"语义token提取进程执行中": "Processo di estrazione token semantici in esecuzione",
"语义token提取进程结束": "Processo di estrazione token semantici terminato",
"请上传参考音频": "Carica l'audio di riferimento",
"输入路径不存在": "Il percorso di input non esiste",
"输入路径存在但既不是文件也不是文件夹": "Il percorso di input esiste ma non è né un file né una cartella",
"输出的语音": "Audio di output",
"进度1a-done": "Progresso: 1a-done",
"进度1a-done, 1b-ing": "Progresso: 1a-done, 1b-ing",
"进度1a-ing": "Progresso: 1a-ing",
"进度1a1b-done": "Progresso: 1a1b-done",
"进度1a1b-done, 1cing": "Progresso: 1a1b-done, 1cing",
"进度all-done": "Progresso: all-done",
"需要合成的切分前文本": "Testo da sintetizzare prima del taglio",
"需要合成的文本": "Testo da sintetizzare",
"需要合成的语种": "Lingua da sintetizzare",
">=3则使用对harvest音高识别的结果使用中值滤波数值为滤波半径使用可以削弱哑音": "Se >=3, usa il filtraggio mediano sui risultati del riconoscimento dell'altezza di harvest, il valore è il raggio del filtro. L'uso di questo valore può attenuare i suoni muti.",
"A模型权重": "Peso del modello A",
"A模型路径": "Percorso del modello A",
"B模型路径": "Percorso del modello B",
"E:\\语音音频+标注\\米津玄师\\src": "E:\\语音音频+标注\\米津玄师\\src",
"F0曲线文件, 可选, 一行一个音高, 代替默认F0及升降调": "File curva F0 (opzionale). ",
"F0曲线文件, 可选, 一行一个音高, 代替默认F0及升降调": "File della curva F0, opzionale, una riga per un'altezza, sostituisce il F0 predefinito e le variazioni di tono",
"Index Rate": "Tasso di indice",
"Onnx导出": "Esporta Onnx",
"Onnx输出路径": "Percorso di esportazione Onnx:",
"RVC模型路径": "Percorso modello RVC:",
"ckpt处理": "Elaborazione ckpt",
"harvest进程数": "harvest进程数",
"index文件路径不可包含中文": "index文件路径不可包含中文",
"pth文件路径不可包含中文": "pth è un'app per il futuro",
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Passaggio 1: compilare la configurazione sperimentale. ",
"step1:正在处理数据": "Passaggio 1: elaborazione dei dati",
"step2:正在提取音高&正在提取特征": "step2:正在提取音高&正在提取特征",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Passaggio 2a: attraversa automaticamente tutti i file nella cartella di addestramento che possono essere decodificati in audio ed esegui la normalizzazione delle sezioni. ",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Passaggio 2b: utilizzare la CPU per estrarre il tono (se il modello ha il tono), utilizzare la GPU per estrarre le caratteristiche (selezionare l'indice GPU):",
"step3: 填写训练设置, 开始训练模型和索引": "Passaggio 3: compilare le impostazioni di addestramento e avviare l'addestramento del modello e dell'indice",
"step3a:正在训练模型": "Passaggio 3a: è iniziato l'addestramento del modello",
"一键训练": "Addestramento con un clic",
"也可批量输入音频文件, 二选一, 优先读文件夹": "也可批量输入音频文件, 二选一, 优先读文件夹",
"人声伴奏分离批量处理, 使用UVR5模型。 <br>合格的文件夹路径格式举例: E:\\codes\\py39\\vits_vc_gpu\\白鹭霜华测试样例(去文件管理器地址栏拷就行了)。 <br>模型分为三类: <br>1、保留人声不带和声的音频选这个对主人声保留比HP5更好。内置HP2和HP3两个模型HP3可能轻微漏伴奏但对主人声保留比HP2稍微好一丁点 <br>2、仅保留主人声带和声的音频选这个对主人声可能有削弱。内置HP5一个模型 <br> 3、去混响、去延迟模型by FoxJoy<br>(1)MDX-Net(onnx_dereverb):对于双通道混响是最好的选择,不能去除单通道混响;<br>&emsp;(234)DeEcho:去除延迟效果。Aggressive比Normal去除得更彻底DeReverb额外去除混响可去除单声道混响但是对高频重的板式混响去不干净。<br>去混响/去延迟,附:<br>1、DeEcho-DeReverb模型的耗时是另外2个DeEcho模型的接近2倍<br>2、MDX-Net-Dereverb模型挺慢的<br>3、个人推荐的最干净的配置是先MDX-Net再DeEcho-Aggressive。": "Elaborazione batch per la separazione dell'accompagnamento vocale utilizzando il modello UVR5.<br>Esempio di un formato di percorso di cartella valido: D:\\path\\to\\input\\folder (copialo dalla barra degli indirizzi del file manager).<br>Il modello è suddiviso in tre categorie:<br>1. Conserva la voce: scegli questa opzione per l'audio senza armonie. <br>2. Mantieni solo la voce principale: scegli questa opzione per l'audio con armonie. <br>3. Modelli di de-riverbero e de-delay (di FoxJoy):<br>(1) MDX-Net: la scelta migliore per la rimozione del riverbero stereo ma non può rimuovere il riverbero mono;<br><br>Note di de-riverbero/de-delay:<br>1. Il tempo di elaborazione per il modello DeEcho-DeReverb è circa il doppio rispetto agli altri due modelli DeEcho.<br>2. Il modello MDX-Net-Dereverb è piuttosto lento.<br>3. La configurazione più pulita consigliata consiste nell'applicare prima MDX-Net e poi DeEcho-Aggressive.",
"以-分隔输入使用的卡号, 例如 0-1-2 使用卡0和卡1和卡2": "Inserisci gli indici GPU separati da '-', ad esempio 0-1-2 per utilizzare GPU 0, 1 e 2:",
"伴奏人声分离&去混响&去回声": "Separazione voce/accompagnamento",
"使用模型采样率": "使用模型采样率",
"使用设备采样率": "使用设备采样率",
"保存名": "Salva nome:",
"保存的文件名, 默认空为和源文件同名": "Salva il nome del file (predefinito: uguale al file di origine):",
"保存的模型名不带后缀": "Nome del modello salvato (senza estensione):",
"保存频率save_every_epoch": "Frequenza di salvataggio (save_every_epoch):",
"保护清辅音和呼吸声防止电音撕裂等artifact拉满0.5不开启,调低加大保护力度但可能降低索引效果": "Proteggi le consonanti senza voce e i suoni del respiro per evitare artefatti come il tearing nella musica elettronica. ",
"修改": "Modificare",
"修改模型信息(仅支持weights文件夹下提取的小模型文件)": "Modifica le informazioni sul modello (supportato solo per i file di modello di piccole dimensioni estratti dalla cartella 'weights')",
"停止音频转换": "Arresta la conversione audio",
"全流程结束!": "Tutti i processi sono stati completati!",
"刷新音色列表和索引路径": "Aggiorna l'elenco delle voci e il percorso dell'indice",
"加载模型": "Carica modello",
"加载预训练底模D路径": "Carica il percorso D del modello base pre-addestrato:",
"加载预训练底模G路径": "Carica il percorso G del modello base pre-addestrato:",
"单次推理": "单次推理",
"卸载音色省显存": "Scarica la voce per risparmiare memoria della GPU:",
"变调(整数, 半音数量, 升八度12降八度-12)": "Trasposizione (numero intero, numero di semitoni, alza di un'ottava: 12, abbassa di un'ottava: -12):",
"后处理重采样至最终采样率0为不进行重采样": "Ricampiona l'audio di output in post-elaborazione alla frequenza di campionamento finale. ",
"否": "NO",
"启用相位声码器": "启用相位声码器",
"Onnx导出": "Esporta in Onnx",
"Onnx输出路径": "Percorso di output Onnx",
"RVC模型路径": "Percorso del modello RVC",
"ckpt处理": "Elaborazione del ckpt",
"harvest进程数": "Numero di processi harvest",
"index文件路径不可包含中文": "Il percorso del file di indice non può contenere caratteri cinesi",
"pth文件路径不可包含中文": "Il percorso del file pth non può contenere caratteri cinesi",
"rmvpe卡号配置以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Configurazione dei numeri delle schede rmvpe: separa con - i numeri delle schede dei diversi processi utilizzati in input. Ad esempio, 0-0-1 utilizza 2 processi sulla scheda 0 e 1 processo sulla scheda 1",
"step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Passo 1: Compila la configurazione sperimentale. I dati sperimentali sono salvati in logs, ogni esperimento in una cartella. È necessario inserire manualmente il percorso del nome dell'esperimento, contenente configurazione sperimentale, log e file di modello addestrato.",
"step1:正在处理数据": "Passo 1: Elaborazione dei dati in corso",
"step2:正在提取音高&正在提取特征": "Passo 2: Estrazione dell'altezza e delle caratteristiche in corso",
"step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Passo 2a: Attraversa automaticamente tutti i file nella cartella di addestramento che possono essere decodificati in audio e li normalizza a fette. Nella cartella sperimentale vengono generate due cartelle wav; Al momento supporta solo l'addestramento singolo.",
"step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Passo 2b: Usa la CPU per estrarre l'altezza (se il modello la include) e la GPU per estrarre le caratteristiche (scegliendo il numero della scheda)",
"step3: 填写训练设置, 开始训练模型和索引": "Passo 3: Compila le impostazioni di addestramento, inizia ad addestrare il modello e l'indice",
"step3a:正在训练模型": "Passo 3a: Addestramento del modello in corso",
"一键训练": "Allenamento One-Click",
"也可批量输入音频文件, 二选一, 优先读文件夹": "È possibile anche inserire file audio in batch, una delle due opzioni, con priorità alla lettura della cartella",
"以-分隔输入使用的卡号, 例如 0-1-2 使用卡0和卡1和卡2": "Numeri delle schede separati da - utilizzati in input, ad esempio 0-1-2, utilizzando le schede 0, 1 e 2",
"伴奏人声分离&去混响&去回声": "Separazione tra accompagnamento e voce & Rimozione dell'eco & Rimozione dell'eco",
"使用模型采样率": "Frequenza di campionamento del modello",
"使用设备采样率": "Frequenza di campionamento del dispositivo",
"保存名": "Nome del salvataggio",
"保存的文件名, 默认空为和源文件同名": "Nome del file salvato, vuoto di default è lo stesso del file sorgente",
"保存的模型名不带后缀": "Nome del modello salvato senza estensione",
"保护清辅音和呼吸声防止电音撕裂等artifact拉满0.5不开启,调低加大保护力度但可能降低索引效果": "Protegge le consonanti chiare e i suoni di respirazione, evita artifact come la rottura del suono elettronico, tirare a 0.5 per disattivare, abbassare per aumentare la protezione ma potrebbe ridurre l'effetto di indicizzazione",
"修改": "Modifica",
"修改模型信息(仅支持weights文件夹下提取的小模型文件)": "Modifica le informazioni del modello (supporta solo i piccoli file di modello estratti dalla cartella weights)",
"停止音频转换": "Interrompi la conversione audio",
"全流程结束!": "Processo completo!",
"刷新音色列表和索引路径": "Aggiorna la lista dei toni e il percorso dell'indice",
"加载模型": "Carica il modello",
"加载预训练底模D路径": "Carica il percorso del modello di fondo preaddestrato D",
"加载预训练底模G路径": "Carica il percorso del modello di fondo preaddestrato G",
"单次推理": "Inferenza singola",
"卸载音色省显存": "Scarica il tono per risparmiare memoria video",
"变调(整数, 半音数量, 升八度12降八度-12)": "Modifica del tono (numero intero, quantità di semitoni, 12 per un'ottava in su, -12 per un'ottava in giù)",
"后处理重采样至最终采样率0为不进行重采样": "Ricampiona in modo post-elaborazione alla frequenza di campionamento finale, 0 per non eseguire il ricampionamento",
"否": "No",
"启用相位声码器": "Abilita il codificatore di fase",
"响应阈值": "Soglia di risposta",
"响度因子": "fattore di sonorità",
"处理数据": "Processa dati",
"导出Onnx模型": "Esporta modello Onnx",
"导出文件格式": "Formato file di esportazione",
"常见问题解答": "FAQ (Domande frequenti)",
"响度因子": "Fattore di risposta",
"处理数据": "Elaborazione dati",
"导出Onnx模型": "Esporta il modello Onnx",
"导出文件格式": "Formato di esportazione del file",
"常见问题解答": "Domande frequenti",
"常规设置": "Impostazioni generali",
"开始音频转换": "Avvia la conversione audio",
"很遗憾您这没有能用的显卡来支持您训练": "Sfortunatamente, non è disponibile alcuna GPU compatibile per supportare l'addestramento.",
"性能设置": "Impostazioni delle prestazioni",
"总训练轮数total_epoch": "Epoch totali di addestramento (total_epoch):",
"批量推理": "批量推理",
"批量转换, 输入待转换音频文件夹, 或上传多个音频文件, 在指定文件夹(默认opt)下输出转换的音频. ": "Conversione massiva. Inserisci il percorso della cartella che contiene i file da convertire o carica più file audio. I file convertiti finiranno nella cartella specificata. (default: opt) ",
"指定输出主人声文件夹": "Specifica la cartella di output per le voci:",
"指定输出文件夹": "Specifica la cartella di output:",
"指定输出非主人声文件夹": "Specificare la cartella di output per l'accompagnamento:",
"开始音频转换": "Inizia la conversione audio",
"性能设置": "Impostazioni di performance",
"批量推理": "Inferenza batch",
"批量转换, 输入待转换音频文件夹, 或上传多个音频文件, 在指定文件夹(默认opt)下输出转换的音频. ": "Conversione in batch, inserisci la cartella con i file audio da convertire o carica più file audio, i file convertiti verranno salvati nella cartella specificata (per impostazione predefinita opt).",
"指定输出主人声文件夹": "Specifica la cartella di output per la voce principale",
"指定输出文件夹": "Specifica la cartella di output",
"指定输出非主人声文件夹": "Specifica la cartella di output per la non voce principale",
"推理时间(ms):": "Tempo di inferenza (ms):",
"推理音色": "Voce di inferenza:",
"推理音色": "Tono di inferenza",
"提取": "Estrai",
"提取音高和处理数据使用的CPU进程数": "Numero di processi CPU utilizzati per l'estrazione del tono e l'elaborazione dei dati:",
"是": "SÌ",
"是否仅保存最新的ckpt文件以节省硬盘空间": "Salva solo l'ultimo file '.ckpt' per risparmiare spazio su disco:",
"是否在每次保存时间点将最终小模型保存至weights文件夹": "Salva un piccolo modello finale nella cartella \"weights\" in ogni punto di salvataggio:",
"是否缓存所有训练集至显存. 10min以下小数据可缓存以加速训练, 大数据缓存会炸显存也加不了多少速": "Memorizza nella cache tutti i set di addestramento nella memoria della GPU. ",
"显卡信息": "Informazioni GPU",
"本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责. <br>如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录<b>LICENSE</b>.": "Questo software è open source con licenza MIT. <br>Se non si accetta questa clausola, non è possibile utilizzare o fare riferimento a codici e file all'interno del pacchetto software. <b>Contratto-LICENZA.txt</b> per dettagli.",
"查看": "Visualizzazione",
"查看模型信息(仅支持weights文件夹下提取的小模型文件)": "Visualizza le informazioni sul modello (supportato solo per file di modello piccoli estratti dalla cartella 'weights')",
"检索特征占比": "Rapporto funzionalità di ricerca (controlla la forza dell'accento, troppo alto ha artefatti):",
"提取音高和处理数据使用的CPU进程数": "Numero di processi CPU utilizzati per l'estrazione dell'altezza del suono e l'elaborazione dei dati",
"是": "Sì",
"是否缓存所有训练集至显存. 10min以下小数据可缓存以加速训练, 大数据缓存会炸显存也加不了多少速": "Se memorizzare nella cache tutto l'insieme di addestramento nella memoria video. Piccoli set di dati inferiori a 10 minuti possono essere memorizzati nella cache per accelerare l'addestramento, la memorizzazione nella cache di grandi set di dati può esaurire la memoria video e non accelerare di molto",
"查看": "Visualizza",
"查看模型信息(仅支持weights文件夹下提取的小模型文件)": "Visualizza le informazioni del modello (supporta solo i piccoli file di modello estratti dalla cartella weights)",
"检索特征占比": "Percentuale di caratteristiche di ricerca",
"模型": "Modello",
"模型推理": "Inferenza del modello",
"模型提取(输入logs文件夹下大文件模型路径),适用于训一半不想训了模型没有自动提取保存小文件模型,或者想测试中间模型的情况": "Estrazione del modello (inserire il percorso del modello di file di grandi dimensioni nella cartella \"logs\"). ",
"模型是否带音高指导": "Se il modello ha una guida del tono:",
"模型是否带音高指导(唱歌一定要, 语音可以不要)": "Se il modello ha una guida del tono (necessario per il canto, facoltativo per il parlato):",
"模型是否带音高指导,1是0否": "Se il modello ha una guida del tono (1: sì, 0: no):",
"模型版本型号": "Versione dell'architettura del modello:",
"模型融合, 可用于测试音色融合": "Model fusion, può essere utilizzato per testare la fusione timbrica",
"模型路径": "Percorso al modello:",
"每张显卡的batch_size": "Dimensione batch per GPU:",
"淡入淡出长度": "Lunghezza dissolvenza",
"模型提取(输入logs文件夹下大文件模型路径),适用于训一半不想训了模型没有自动提取保存小文件模型,或者想测试中间模型的情况": "Estrazione del modello (inserisci il percorso del modello di grandi dimensioni nella cartella logs), adatto per i modelli a metà addestramento che non si desidera continuare ad addestrare, i modelli non estratti automaticamente vengono salvati come modelli di piccole dimensioni o per testare la situazione del modello intermedio",
"模型是否带音高指导": "Il modello include o meno la guida all'altezza del suono",
"模型是否带音高指导(唱歌一定要, 语音可以不要)": "Il modello include o meno la guida all'altezza del suono (necessario per il canto, opzionale per la voce)",
"模型是否带音高指导,1是0否": "Il modello include o meno la guida all'altezza del suono, 1 sì, 0 no",
"模型版本型号": "Versione e modello del modello",
"模型融合, 可用于测试音色融合": "Fusione dei modelli, utile per testare la fusione dei toni",
"模型路径": "Percorso del modello",
"淡入淡出长度": "Lunghezza del fading in/fading out",
"版本": "Versione",
"特征提取": "Estrazione delle caratteristiche",
"特征检索库文件路径,为空则使用下拉的选择结果": "Percorso del file di indice delle caratteristiche. ",
"男转女推荐+12key, 女转男推荐-12key, 如果音域爆炸导致音色失真也可以自己调整到合适音域. ": "Tonalità +12 consigliata per la conversione da maschio a femmina e tonalità -12 per la conversione da femmina a maschio. ",
"目标采样率": "Frequenza di campionamento target:",
"算法延迟(ms):": "算法延迟(ms):",
"自动检测index路径,下拉式选择(dropdown)": "Rileva automaticamente il percorso dell'indice e seleziona dal menu a tendina:",
"特征检索库文件路径,为空则使用下拉的选择结果": "Percorso del file della libreria di ricerca delle caratteristiche, se vuoto usa la selezione a discesa",
"男转女推荐+12key, 女转男推荐-12key, 如果音域爆炸导致音色失真也可以自己调整到合适音域. ": "Consigliato +12 toni per la trasformazione da uomo a donna, -12 toni per la trasformazione da donna a uomo. Se l'intervallo tonale esplode causando distorsioni nel timbro, è possibile regolarlo manualmente nell'intervallo adatto.",
"目标采样率": "Frequenza di campionamento obiettivo",
"算法延迟(ms):": "Ritardo dell'algoritmo (ms):",
"自动检测index路径,下拉式选择(dropdown)": "Rilevamento automatico del percorso dell'indice, selezione a discesa (dropdown)",
"融合": "Fusione",
"要改的模型信息": "Informazioni sul modello da modificare:",
"要置入的模型信息": "Informazioni sul modello da posizionare:",
"要改的模型信息": "Informazioni del modello da modificare",
"要置入的模型信息": "Informazioni del modello da inserire",
"训练": "Addestramento",
"训练模型": "Addestra modello",
"训练特征索引": "Addestra indice delle caratteristiche",
"训练结束, 您可查看控制台训练日志或实验文件夹下的train.log": "Addestramento completato. ",
"请指定说话人id": "Si prega di specificare l'ID del locutore/cantante:",
"请选择index文件": "请选择index文件",
"请选择pth文件": "请选择pth 文件",
"请选择说话人id": "Seleziona ID locutore/cantante:",
"转换": "Convertire",
"输入实验名": "Inserisci il nome dell'esperimento:",
"输入待处理音频文件夹路径": "Immettere il percorso della cartella audio da elaborare:",
"输入待处理音频文件夹路径(去文件管理器地址栏拷就行了)": "Immettere il percorso della cartella audio da elaborare (copiarlo dalla barra degli indirizzi del file manager):",
"输入待处理音频文件路径(默认是正确格式示例)": "Immettere il percorso del file audio da elaborare (l'impostazione predefinita è l'esempio di formato corretto):",
"输入源音量包络替换输出音量包络融合比例越靠近1越使用输出包络": "Regola il ridimensionamento dell'inviluppo del volume. ",
"输入监听": "输入监听",
"输入训练文件夹路径": "Inserisci il percorso della cartella di addestramento:",
"训练模型": "Addestra il modello",
"训练特征索引": "Addestramento dell'indice delle caratteristiche",
"训练结束, 您可查看控制台训练日志或实验文件夹下的train.log": "Fine dell'addestramento, puoi visualizzare il registro di addestramento sulla console o il file train.log nella cartella dell'esperimento",
"请指定说话人id": "Si prega di specificare l'ID del parlante",
"请选择index文件": "Seleziona il file di indice",
"请选择pth文件": "Seleziona il file pth",
"请选择说话人id": "Seleziona l'ID del parlante",
"转换": "Converti",
"输入实验名": "Inserisci il nome dell'esperimento",
"输入待处理音频文件夹路径": "Inserisci il percorso della cartella dei file audio da elaborare",
"输入待处理音频文件夹路径(去文件管理器地址栏拷就行了)": "Inserisci il percorso della cartella dei file audio da elaborare (copialo dalla barra degli indirizzi del gestore dei file)",
"输入待处理音频文件路径(默认是正确格式示例)": "Inserisci il percorso del file audio da elaborare (esempio di formato corretto predefinito)",
"输入源音量包络替换输出音量包络融合比例越靠近1越使用输出包络": "Inserisci la proporzione di fusione della sostituzione dell'involucro del volume di ingresso con l'involucro del volume di uscita, più vicino a 1 più utilizza l'involucro di uscita",
"输入监听": "Inserisci l'ascolto",
"输入训练文件夹路径": "Inserisci il percorso della cartella di addestramento",
"输入设备": "Dispositivo di input",
"输入降噪": "Riduzione del rumore in ingresso",
"输出信息": "Informazioni sull'uscita",
"输出变声": "输出变声",
"输出设备": "Dispositivo di uscita",
"输出降噪": "Riduzione del rumore in uscita",
"输出音频(右下角三个点,点了可以下载)": "Esporta audio (clicca sui tre puntini in basso a destra per scaricarlo)",
"输入降噪": "Inserisci la riduzione del rumore",
"输出信息": "Informazioni di output",
"输出变声": "Variazione della voce in output",
"输出设备": "Dispositivo di output",
"输出降噪": "Riduzione del rumore in output",
"输出音频(右下角三个点,点了可以下载)": "Audio in output (tre punti nell'angolo in basso a destra, fare clic per scaricare)",
"选择.index文件": "Seleziona il file .index",
"选择.pth文件": "Seleziona il file .pth",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU": "选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU,rmvpe效果最好且微吃GPU": "Seleziona l'algoritmo di estrazione del tono (\"pm\": estrazione più veloce ma risultato di qualità inferiore; \"harvest\": bassi migliori ma estremamente lenti; \"crepe\": qualità migliore ma utilizzo intensivo della GPU):",
"选择音高提取算法:输入歌声可用pm提速,高质量语音但CPU差可用dio提速,harvest质量更好但慢,rmvpe效果最好且微吃CPU/GPU": "选择音高提取算法:输入歌声可用pm提速,高质量语音但CPU差可用dio提速,harvest质量更好但慢,rmvpe效果最好且微吃CPU/GPU",
"采样率:": "采样率:",
"采样长度": "Lunghezza del campione",
"重载设备列表": "Ricaricare l'elenco dei dispositivi",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU": "Seleziona l'algoritmo di estrazione dell'altezza del suono, l'input vocale può utilizzare pm per velocizzare, harvest ha bassi migliori ma è incredibilmente lento, crepe ha un buon effetto ma consuma molte risorse della GPU",
"选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU,rmvpe效果最好且微吃GPU": "Seleziona l'algoritmo di estrazione dell'altezza del suono, l'input vocale può utilizzare pm per velocizzare, harvest ha bassi migliori ma è incredibilmente lento, crepe ha un buon effetto ma consuma molte risorse della GPU, rmvpe ha il miglior effetto ed è leggermente esigente sulla GPU",
"选择音高提取算法:输入歌声可用pm提速,高质量语音但CPU差可用dio提速,harvest质量更好但慢,rmvpe效果最好且微吃CPU/GPU": "Seleziona l'algoritmo di estrazione dell'altezza del suono: l'input vocale può utilizzare pm per velocizzare, la qualità del suono è elevata ma richiede molte risorse della CPU; l'input vocale può utilizzare dio per velocizzare, harvest ha una qualità del suono migliore ma è lento, rmvpe ha il miglior effetto ed è leggermente esigente sulla CPU/GPU",
"采样率:": "Frequenza di campionamento:",
"采样长度": "Lunghezza del campionamento",
"重载设备列表": "Ricarica la lista dei dispositivi",
"音调设置": "Impostazioni del tono",
"音频设备(请使用同种类驱动)": "Dispositivo audio (utilizzare lo stesso tipo di driver)",
"音高算法": "音高算法",
"音频设备(请使用同种类驱动)": "Dispositivo audio (usa driver della stessa categoria)",
"音高算法": "Algoritmo dell'altezza del suono",
"额外推理时长": "Tempo di inferenza extra"
}
}

View File

@ -110,6 +110,9 @@ class AudioPre:
y_spec_m = pred * X_phase
v_spec_m = X_spec_m - y_spec_m
if is_hp3 == True:
ins_root,vocal_root = vocal_root,ins_root
if ins_root is not None:
if self.data["high_end_process"].startswith("mirroring"):
input_high_end_ = spec_utils.mirroring(

View File

@ -1,11 +1,12 @@
import os
import traceback,gradio as gr
import logging
from i18n.i18n import I18nAuto
from tools.i18n.i18n import I18nAuto
i18n = I18nAuto()
logger = logging.getLogger(__name__)
import ffmpeg
import librosa
import soundfile as sf
import torch
import sys
from mdxnet import MDXNetDereverb
@ -19,7 +20,8 @@ for name in os.listdir(weight_uvr5_root):
device=sys.argv[1]
is_half=sys.argv[2]
webui_port_uvr5=int(sys.argv[3])
is_share=eval(sys.argv[4])
def uvr(model_name, inp_root, save_root_vocal, paths, save_root_ins, agg, format0):
infos = []
@ -50,52 +52,55 @@ def uvr(model_name, inp_root, save_root_vocal, paths, save_root_ins, agg, format
paths = [path.name for path in paths]
for path in paths:
inp_path = os.path.join(inp_root, path)
need_reformat = 1
done = 0
if(os.path.isfile(inp_path)==False):continue
try:
info = ffmpeg.probe(inp_path, cmd="ffprobe")
if (
info["streams"][0]["channels"] == 2
and info["streams"][0]["sample_rate"] == "44100"
):
need_reformat = 0
pre_fun._path_audio_(
inp_path, save_root_ins, save_root_vocal, format0, is_hp3=is_hp3
done = 0
try:
y, sr = librosa.load(inp_path, sr=None)
info = sf.info(inp_path)
channels = info.channels
if channels == 2 and sr == 44100:
need_reformat = 0
pre_fun._path_audio_(
inp_path, save_root_ins, save_root_vocal, format0, is_hp3=is_hp3
)
done = 1
else:
need_reformat = 1
except:
need_reformat = 1
traceback.print_exc()
if need_reformat == 1:
tmp_path = "%s/%s.reformatted.wav" % (
os.path.join(os.environ["TEMP"]),
os.path.basename(inp_path),
)
done = 1
except:
need_reformat = 1
traceback.print_exc()
if need_reformat == 1:
tmp_path = "%s/%s.reformatted.wav" % (
os.path.join(os.environ["TEMP"]),
os.path.basename(inp_path),
)
os.system(
"ffmpeg -i %s -vn -acodec pcm_s16le -ac 2 -ar 44100 %s -y"
% (inp_path, tmp_path)
)
inp_path = tmp_path
try:
if done == 0:
pre_fun._path_audio_(
inp_path, save_root_ins, save_root_vocal, format0
)
infos.append("%s->Success" % (os.path.basename(inp_path)))
yield "\n".join(infos)
except:
y_resampled = librosa.resample(y, sr, 44100)
sf.write(tmp_path, y_resampled, 44100, "PCM_16")
inp_path = tmp_path
try:
if done == 0:
pre_fun._path_audio_(
inp_path, save_root_ins, save_root_vocal, format0
inp_path, save_root_ins, save_root_vocal, format0, is_hp3=is_hp3
)
infos.append("%s->Success" % (os.path.basename(inp_path)))
yield "\n".join(infos)
except:
infos.append(
"%s->%s" % (os.path.basename(inp_path), traceback.format_exc())
)
yield "\n".join(infos)
try:
if done == 0:
pre_fun._path_audio_(
inp_path, save_root_ins, save_root_vocal, format0, is_hp3=is_hp3
)
infos.append("%s->Success" % (os.path.basename(inp_path)))
yield "\n".join(infos)
except:
infos.append(
"%s->%s" % (os.path.basename(inp_path), traceback.format_exc())
)
yield "\n".join(infos)
except:
infos.append("Oh my god. %s->%s"%(os.path.basename(inp_path), traceback.format_exc()))
yield "\n".join(infos)
except:
infos.append(traceback.format_exc())
yield "\n".join(infos)
@ -115,10 +120,10 @@ def uvr(model_name, inp_root, save_root_vocal, paths, save_root_ins, agg, format
yield "\n".join(infos)
with gr.Blocks(title="UVR5 WebUI") as app:
with gr.Blocks(title="RVC WebUI") as app:
gr.Markdown(
value=
"MIT license. https://github.com/Anjok07/ultimatevocalremovergui"
i18n("本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责. <br>如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录<b>LICENSE</b>.")
)
with gr.Tabs():
with gr.TabItem(i18n("伴奏人声分离&去混响&去回声")):
@ -143,7 +148,7 @@ with gr.Blocks(title="UVR5 WebUI") as app:
minimum=0,
maximum=20,
step=1,
label="人声提取激进程度",
label=i18n("人声提取激进程度"),
value=10,
interactive=True,
visible=False, # 先不开放调整
@ -179,6 +184,7 @@ with gr.Blocks(title="UVR5 WebUI") as app:
app.queue(concurrency_count=511, max_size=1022).launch(
server_name="0.0.0.0",
inbrowser=True,
server_port=9873,
share=is_share,
server_port=webui_port_uvr5,
quiet=True,
)
)

View File

@ -25,13 +25,20 @@ for path in site.getsitepackages():
if(site_packages_roots==[]):site_packages_roots=["%s/runtime/Lib/site-packages" % now_dir]
#os.environ["OPENBLAS_NUM_THREADS"] = "4"
os.environ["no_proxy"] = "localhost, 127.0.0.1, ::1"
os.environ["all_proxy"] = ""
for site_packages_root in site_packages_roots:
if os.path.exists(site_packages_root):
with open("%s/users.pth" % (site_packages_root), "w") as f:
f.write(
"%s\n%s/tools\n%s/tools/damo_asr\n%s/GPT_SoVITS\n%s/tools/uvr5"
% (now_dir, now_dir, now_dir, now_dir, now_dir)
)
try:
with open("%s/users.pth" % (site_packages_root), "w") as f:
f.write(
"%s\n%s/tools\n%s/tools/damo_asr\n%s/GPT_SoVITS\n%s/tools/uvr5"
% (now_dir, now_dir, now_dir, now_dir, now_dir)
)
break
except PermissionError:
pass
from tools import my_utils
import traceback
import shutil