From 016e8754b929f8ad8b1db208a86dbe343f3cc3f9 Mon Sep 17 00:00:00 2001 From: Rafael Godoy <78083427+RafaelGodoyEbert@users.noreply.github.com> Date: Tue, 16 Jan 2024 14:02:38 -0300 Subject: [PATCH] Translation of RVC into Portuguese in i18n (#1719) * Translation of RVC into Portuguese in i18n Added the Brazilian Portuguese language to the project. * Removal of external links Removed external links to approve the request. * Removed external links and translated in real time More other links I found and removed and fixed some translations that were missing in realtime-gui * Translation of doc * FAQ with original and adapted questions: - All translated original FAQs - Additional new FAQs adapted to the reality of my country * adding translated images --- docs/pt-BR/Changelog_pt-BR.md | 105 ++++++++++++++ docs/pt-BR/README.pt-BR.md | 193 +++++++++++++++++++++++++ docs/pt-BR/faiss_tips_BR.md | 102 ++++++++++++++ docs/pt-BR/faq_pt-BR.md | 224 ++++++++++++++++++++++++++++++ docs/pt-BR/training_tips_pt-BR.md | 65 +++++++++ i18n/locale/pt_BR.json | 188 +++++++++++++++++++++++++ 6 files changed, 877 insertions(+) create mode 100644 docs/pt-BR/Changelog_pt-BR.md create mode 100644 docs/pt-BR/README.pt-BR.md create mode 100644 docs/pt-BR/faiss_tips_BR.md create mode 100644 docs/pt-BR/faq_pt-BR.md create mode 100644 docs/pt-BR/training_tips_pt-BR.md create mode 100644 i18n/locale/pt_BR.json diff --git a/docs/pt-BR/Changelog_pt-BR.md b/docs/pt-BR/Changelog_pt-BR.md new file mode 100644 index 0000000..4833893 --- /dev/null +++ b/docs/pt-BR/Changelog_pt-BR.md @@ -0,0 +1,105 @@ +### 2023-10-06 +- Criamos uma GUI para alteração de voz em tempo real: go-realtime-gui.bat/gui_v1.py (observe que você deve escolher o mesmo tipo de dispositivo de entrada e saída, por exemplo, MME e MME). +- Treinamos um modelo RMVPE de extração de pitch melhor. +- Otimizar o layout da GUI de inferência. + +### 2023-08-13 +1-Correção de bug regular +- Alterar o número total mínimo de épocas para 1 e alterar o número total mínimo de epoch para 2 +- Correção de erros de treinamento por não usar modelos de pré-treinamento +- Após a separação dos vocais de acompanhamento, limpe a memória dos gráficos +- Alterar o caminho absoluto do faiss save para o caminho relativo +- Suporte a caminhos com espaços (tanto o caminho do conjunto de treinamento quanto o nome do experimento são suportados, e os erros não serão mais relatados) +- A lista de arquivos cancela a codificação utf8 obrigatória +- Resolver o problema de consumo de CPU causado pela busca do faiss durante alterações de voz em tempo real + +Atualizações do 2-Key +- Treine o modelo de extração de pitch vocal de código aberto mais forte do momento, o RMVPE, e use-o para treinamento de RVC, inferência off-line/em tempo real, com suporte a PyTorch/Onnx/DirectML +- Suporte para placas gráficas AMD e Intel por meio do Pytorch_DML + +(1) Mudança de voz em tempo real (2) Inferência (3) Separação do acompanhamento vocal (4) Não há suporte para treinamento no momento, mudaremos para treinamento de CPU; há suporte para inferência RMVPE de gpu por Onnx_Dml + + +### 2023-06-18 +- Novos modelos v2 pré-treinados: 32k e 48k +- Correção de erros de inferência de modelo não-f0 +- Para conjuntos de treinamento que excedam 1 hora, faça minibatch-kmeans automáticos para reduzir a forma dos recursos, de modo que o treinamento, a adição e a pesquisa do Index sejam muito mais rápidos. +- Fornecer um espaço de brinquedo vocal2guitar huggingface +- Exclusão automática de áudios de conjunto de treinamento de atalhos discrepantes +- Guia de exportação Onnx + +Experimentos com falha: +- ~~Recuperação de recurso: adicionar recuperação de recurso temporal: não eficaz~~ +- ~~Recuperação de recursos: adicionar redução de dimensionalidade PCAR: a busca é ainda mais lenta~~ +- ~~Aumento de dados aleatórios durante o treinamento: não é eficaz~~ + +Lista de tarefas: +- ~~Vocos-RVC (vocoder minúsculo): não é eficaz~~ +- ~~Suporte de crepe para treinamento: substituído pelo RMVPE~~ +- ~~Inferência de crepe de meia precisão:substituída pelo RMVPE. E difícil de conseguir.~~ +- Suporte ao editor de F0 + +### 2023-05-28 +- Adicionar notebook jupyter v2, changelog em coreano, corrigir alguns requisitos de ambiente +- Adicionar consoante sem voz e modo de proteção de respiração +- Suporte à detecção de pitch crepe-full +- Separação vocal UVR5: suporte a modelos dereverb e modelos de-echo +- Adicionar nome e versão do experimento no nome do Index +- Suporte aos usuários para selecionar manualmente o formato de exportação dos áudios de saída durante o processamento de conversão de voz em lote e a separação vocal UVR5 +- Não há mais suporte para o treinamento do modelo v1 32k + +### 2023-05-13 +- Limpar os códigos redundantes na versão antiga do tempo de execução no pacote de um clique: lib.infer_pack e uvr5_pack +- Correção do bug de pseudo multiprocessamento no pré-processamento do conjunto de treinamento +- Adição do ajuste do raio de filtragem mediana para o algoritmo de reconhecimento de inclinação da extração +- Suporte à reamostragem de pós-processamento para exportação de áudio +- A configuração "n_cpu" de multiprocessamento para treinamento foi alterada de "extração de f0" para "pré-processamento de dados e extração de f0" +- Detectar automaticamente os caminhos de Index na pasta de registros e fornecer uma função de lista suspensa +- Adicionar "Perguntas e respostas frequentes" na página da guia (você também pode consultar o wiki do RVC no github) +- Durante a inferência, o pitch da colheita é armazenado em cache quando se usa o mesmo caminho de áudio de entrada (finalidade: usando a extração do pitch da colheita, todo o pipeline passará por um processo longo e repetitivo de extração do pitch. Se o armazenamento em cache não for usado, os usuários que experimentarem diferentes configurações de raio de filtragem de timbre, Index e mediana de pitch terão um processo de espera muito doloroso após a primeira inferência) + +### 2023-05-14 +- Use o envelope de volume da entrada para misturar ou substituir o envelope de volume da saída (pode aliviar o problema de "muting de entrada e ruído de pequena amplitude de saída"). Se o ruído de fundo do áudio de entrada for alto, não é recomendável ativá-lo, e ele não é ativado por padrão (1 pode ser considerado como não ativado) +- Suporte ao salvamento de modelos pequenos extraídos em uma frequência especificada (se você quiser ver o desempenho em épocas diferentes, mas não quiser salvar todos os pontos de verificação grandes e extrair manualmente modelos pequenos pelo processamento ckpt todas as vezes, esse recurso será muito prático) +- Resolver o problema de "erros de conexão" causados pelo proxy global do servidor, definindo variáveis de ambiente +- Oferece suporte a modelos v2 pré-treinados (atualmente, apenas as versões 40k estão disponíveis publicamente para teste e as outras duas taxas de amostragem ainda não foram totalmente treinadas) +- Limita o volume excessivo que excede 1 antes da inferência +- Ajustou ligeiramente as configurações do pré-processamento do conjunto de treinamento + + +####################### + +Histórico de registros de alterações: + +### 2023-04-09 +- Parâmetros de treinamento corrigidos para melhorar a taxa de utilização da GPU: A100 aumentou de 25% para cerca de 90%, V100: 50% para cerca de 90%, 2060S: 60% para cerca de 85%, P40: 25% para cerca de 95%; melhorou significativamente a velocidade de treinamento +- Parâmetro alterado: total batch_size agora é por GPU batch_size +- Total_epoch alterado: limite máximo aumentado de 100 para 1000; padrão aumentado de 10 para 20 +- Corrigido o problema da extração de ckpt que reconhecia o pitch incorretamente, causando inferência anormal +- Corrigido o problema do treinamento distribuído que salvava o ckpt para cada classificação +- Aplicada a filtragem de recursos nan para extração de recursos +- Corrigido o problema com a entrada/saída silenciosa que produzia consoantes aleatórias ou ruído (os modelos antigos precisavam ser treinados novamente com um novo conjunto de dados) + +### Atualização 2023-04-16 +- Adicionada uma mini-GUI de alteração de voz local em tempo real, iniciada com um clique duplo em go-realtime-gui.bat +- Filtragem aplicada para bandas de frequência abaixo de 50 Hz durante o treinamento e a inferência +- Diminuição da extração mínima de tom do pyworld do padrão 80 para 50 para treinamento e inferência, permitindo que vozes masculinas de tom baixo entre 50-80 Hz não sejam silenciadas +- A WebUI suporta a alteração de idiomas de acordo com a localidade do sistema (atualmente suporta en_US, ja_JP, zh_CN, zh_HK, zh_SG, zh_TW; o padrão é en_US se não for suportado) +- Correção do reconhecimento de algumas GPUs (por exemplo, falha no reconhecimento da V100-16G, falha no reconhecimento da P4) + +### Atualização de 2023-04-28 +- Atualizadas as configurações do Index faiss para maior velocidade e qualidade +- Removida a dependência do total_npy; o futuro compartilhamento de modelos não exigirá a entrada do total_npy +- Restrições desbloqueadas para as GPUs da série 16, fornecendo configurações de inferência de 4 GB para GPUs com VRAM de 4 GB +- Corrigido o erro na separação do acompanhamento vocal do UVR5 para determinados formatos de áudio +- A mini-GUI de alteração de voz em tempo real agora suporta modelos de pitch não 40k e que não são lentos + +### Planos futuros: +Recursos: +- Opção de adição: extrair modelos pequenos para cada epoch salvo +- Adicionar opção: exportar mp3 adicional para o caminho especificado durante a inferência +- Suporte à guia de treinamento para várias pessoas (até 4 pessoas) + +Modelo básico: +- Coletar arquivos wav de respiração para adicionar ao conjunto de dados de treinamento para corrigir o problema de sons de respiração distorcidos +- No momento, estamos treinando um modelo básico com um conjunto de dados de canto estendido, que será lançado no futuro \ No newline at end of file diff --git a/docs/pt-BR/README.pt-BR.md b/docs/pt-BR/README.pt-BR.md new file mode 100644 index 0000000..7de7010 --- /dev/null +++ b/docs/pt-BR/README.pt-BR.md @@ -0,0 +1,193 @@ +
+ +

Retrieval-based-Voice-Conversion-WebUI

+Uma estrutura de conversão de voz fácil de usar baseada em VITS.

+ +[![madewithlove](https://img.shields.io/badge/made_with-%E2%9D%A4-red?style=for-the-badge&labelColor=orange +)](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI) + +
+ +[![Open In Colab](https://img.shields.io/badge/Colab-F9AB00?style=for-the-badge&logo=googlecolab&color=525252)](https://colab.research.google.com/github/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/Retrieval_based_Voice_Conversion_WebUI.ipynb) +[![Licence](https://img.shields.io/github/license/RVC-Project/Retrieval-based-Voice-Conversion-WebUI?style=for-the-badge)](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/LICENSE) +[![Huggingface](https://img.shields.io/badge/🤗%20-Spaces-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/) + +[![Discord](https://img.shields.io/badge/RVC%20Developers-Discord-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/HcsmBBGyVk) + +
+ +------ +[**Changelog**](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/docs/Changelog_EN.md) | [**FAQ (Frequently Asked Questions)**](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/wiki/FAQ-(Frequently-Asked-Questions)) + +[**English**](../en/README.en.md) | [**中文简体**](../../README.md) | [**日本語**](../jp/README.ja.md) | [**한국어**](../kr/README.ko.md) ([**韓國語**](../kr/README.ko.han.md)) | [**Türkçe**](../tr/README.tr.md) + + +Confira nosso [Vídeo de demonstração](https://www.bilibili.com/video/BV1pm4y1z7Gm/) aqui! + +Treinamento/Inferência WebUI:go-web.bat +![Traduzido](https://github.com/RafaelGodoyEbert/Retrieval-based-Voice-Conversion-WebUI/assets/78083427/0b894d87-565a-432c-8b5b-45e4a65d5d17) + +GUI de conversão de voz em tempo real:go-realtime-gui.bat +![image](https://github.com/RafaelGodoyEbert/Retrieval-based-Voice-Conversion-WebUI/assets/78083427/d172e3e5-35f4-4876-9530-c28246919e9e) + + +> O dataset para o modelo de pré-treinamento usa quase 50 horas de conjunto de dados de código aberto VCTK de alta qualidade. + +> Dataset de músicas licenciadas de alta qualidade serão adicionados ao conjunto de treinamento, um após o outro, para seu uso, sem se preocupar com violação de direitos autorais. + +> Aguarde o modelo básico pré-treinado do RVCv3, que possui parâmetros maiores, mais dados de treinamento, melhores resultados, velocidade de inferência inalterada e requer menos dados de treinamento para treinamento. + +## Resumo +Este repositório possui os seguintes recursos: ++ Reduza o vazamento de tom substituindo o recurso de origem pelo recurso de conjunto de treinamento usando a recuperação top1; ++ Treinamento fácil e rápido, mesmo em placas gráficas relativamente ruins; ++ Treinar com uma pequena quantidade de dados também obtém resultados relativamente bons (>=10min de áudio com baixo ruído recomendado); ++ Suporta fusão de modelos para alterar timbres (usando guia de processamento ckpt-> mesclagem ckpt); ++ Interface Webui fácil de usar; ++ Use o modelo UVR5 para separar rapidamente vocais e instrumentos. ++ Use o mais poderoso algoritmo de extração de voz de alta frequência [InterSpeech2023-RMVPE](#Credits) para evitar o problema de som mudo. Fornece os melhores resultados (significativamente) e é mais rápido, com consumo de recursos ainda menor que o Crepe_full. ++ Suporta aceleração de placas gráficas AMD/Intel. ++ Aceleração de placas gráficas Intel ARC com suporte para IPEX. + +## Preparando o ambiente +Os comandos a seguir precisam ser executados no ambiente Python versão 3.8 ou superior. + +(Windows/Linux) +Primeiro instale as dependências principais através do pip: +```bash +# Instale as dependências principais relacionadas ao PyTorch, pule se instaladas +# Referência: https://pytorch.org/get-started/locally/ +pip install torch torchvision torchaudio + +#Para arquitetura Windows + Nvidia Ampere (RTX30xx), você precisa especificar a versão cuda correspondente ao pytorch de acordo com a experiência de https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/issues/ 21 +#pip instalar tocha torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117 + +#Para placas Linux + AMD, você precisa usar as seguintes versões do pytorch: +#pip instalar tocha torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2 +``` + +Então pode usar poesia para instalar as outras dependências: +```bash +# Instale a ferramenta de gerenciamento de dependências Poetry, pule se instalada +# Referência: https://python-poetry.org/docs/#installation +curl -sSL https://install.python-poetry.org | python3 - + +#Instale as dependências do projeto +poetry install +``` + +Você também pode usar pip para instalá-los: +```bash + +for Nvidia graphics cards + pip install -r requirements.txt + +for AMD/Intel graphics cards on Windows (DirectML): + pip install -r requirements-dml.txt + +for Intel ARC graphics cards on Linux / WSL using Python 3.10: + pip install -r requirements-ipex.txt + +for AMD graphics cards on Linux (ROCm): + pip install -r requirements-amd.txt +``` + +------ +Usuários de Mac podem instalar dependências via `run.sh`: +```bash +sh ./run.sh +``` + +## Preparação de outros Pré-modelos +RVC requer outros pré-modelos para inferir e treinar. + +```bash +#Baixe todos os modelos necessários em https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/ +python tools/download_models.py +``` + +Ou apenas baixe-os você mesmo em nosso [Huggingface space](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/). + +Aqui está uma lista de pré-modelos e outros arquivos que o RVC precisa: +```bash +./assets/hubert/hubert_base.pt + +./assets/pretrained + +./assets/uvr5_weights + +Downloads adicionais são necessários se você quiser testar a versão v2 do modelo. + +./assets/pretrained_v2 + +Se você deseja testar o modelo da versão v2 (o modelo da versão v2 alterou a entrada do recurso dimensional 256 do Hubert + final_proj de 9 camadas para o recurso dimensional 768 do Hubert de 12 camadas e adicionou 3 discriminadores de período), você precisará baixar recursos adicionais + +./assets/pretrained_v2 + +#Se você estiver usando Windows, também pode precisar desses dois arquivos, pule se FFmpeg e FFprobe estiverem instalados +ffmpeg.exe + +https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffmpeg.exe + +ffprobe.exe + +https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffprobe.exe + +Se quiser usar o algoritmo de extração de tom vocal SOTA RMVPE mais recente, você precisa baixar os pesos RMVPE e colocá-los no diretório raiz RVC + +https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/rmvpe.pt + + Para usuários de placas gráficas AMD/Intel, você precisa baixar: + + https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/rmvpe.onnx + +``` + +Os usuários de placas gráficas Intel ARC precisam executar o comando `source /opt/intel/oneapi/setvars.sh` antes de iniciar o Webui. + +Em seguida, use este comando para iniciar o Webui: +```bash +python infer-web.py +``` + +Se estiver usando Windows ou macOS, você pode baixar e extrair `RVC-beta.7z` para usar RVC diretamente usando `go-web.bat` no Windows ou `sh ./run.sh` no macOS para iniciar o Webui. + +## Suporte ROCm para placas gráficas AMD (somente Linux) +Para usar o ROCm no Linux, instale todos os drivers necessários conforme descrito [aqui](https://rocm.docs.amd.com/en/latest/deploy/linux/os-native/install.html). + +No Arch use pacman para instalar o driver: +```` +pacman -S rocm-hip-sdk rocm-opencl-sdk +```` + +Talvez você também precise definir estas variáveis de ambiente (por exemplo, em um RX6700XT): +```` +export ROCM_PATH=/opt/rocm +export HSA_OVERRIDE_GFX_VERSION=10.3.0 +```` +Verifique também se seu usuário faz parte do grupo `render` e `video`: +```` +sudo usermod -aG render $USERNAME +sudo usermod -aG video $USERNAME +```` +Depois disso, você pode executar o WebUI: +```bash +python infer-web.py +``` + +## Credits ++ [ContentVec](https://github.com/auspicious3000/contentvec/) ++ [VITS](https://github.com/jaywalnut310/vits) ++ [HIFIGAN](https://github.com/jik876/hifi-gan) ++ [Gradio](https://github.com/gradio-app/gradio) ++ [FFmpeg](https://github.com/FFmpeg/FFmpeg) ++ [Ultimate Vocal Remover](https://github.com/Anjok07/ultimatevocalremovergui) ++ [audio-slicer](https://github.com/openvpi/audio-slicer) ++ [Vocal pitch extraction:RMVPE](https://github.com/Dream-High/RMVPE) + + The pretrained model is trained and tested by [yxlllc](https://github.com/yxlllc/RMVPE) and [RVC-Boss](https://github.com/RVC-Boss). + +## Thanks to all contributors for their efforts + + + + diff --git a/docs/pt-BR/faiss_tips_BR.md b/docs/pt-BR/faiss_tips_BR.md new file mode 100644 index 0000000..8649979 --- /dev/null +++ b/docs/pt-BR/faiss_tips_BR.md @@ -0,0 +1,102 @@ +pONTAS de afinação FAISS +================== +# sobre faiss +faiss é uma biblioteca de pesquisas de vetores densos na área, desenvolvida pela pesquisa do facebook, que implementa com eficiência muitos métodos de pesquisa de área aproximada. +A Pesquisa Aproximada de área encontra vetores semelhantes rapidamente, sacrificando alguma precisão. + +## faiss em RVC +No RVC, para a incorporação de recursos convertidos pelo HuBERT, buscamos incorporações semelhantes à incorporação gerada a partir dos dados de treinamento e as misturamos para obter uma conversão mais próxima do discurso original. No entanto, como essa pesquisa leva tempo se realizada de forma ingênua, a conversão de alta velocidade é realizada usando a pesquisa aproximada de área. + +# visão geral da implementação +Em '/logs/nome-do-seu-modelo/3_feature256', onde o modelo está localizado, os recursos extraídos pelo HuBERT de cada dado de voz estão localizados. +A partir daqui, lemos os arquivos npy ordenados por nome de arquivo e concatenamos os vetores para criar big_npy. (Este vetor tem a forma [N, 256].) +Depois de salvar big_npy as /logs/nome-do-seu-modelo/total_fea.npy, treine-o com faiss. + +Neste artigo, explicarei o significado desses parâmetros. + +# Explicação do método +## Fábrica de Index +Uma fábrica de Index é uma notação faiss exclusiva que expressa um pipeline que conecta vários métodos de pesquisa de área aproximados como uma string. +Isso permite que você experimente vários métodos aproximados de pesquisa de área simplesmente alterando a cadeia de caracteres de fábrica do Index. +No RVC é usado assim: + +```python +index = faiss.index_factory(256, "IVF%s,Flat" % n_ivf) +``` +Entre os argumentos de index_factory, o primeiro é o número de dimensões do vetor, o segundo é a string de fábrica do Index e o terceiro é a distância a ser usada. + +Para uma notação mais detalhada +https://github.com/facebookresearch/faiss/wiki/The-index-factory + +## Construção de Index +Existem dois Indexs típicos usados como similaridade de incorporação da seguinte forma. + +- Distância euclidiana (MÉTRICA_L2) +- Produto interno (METRIC_INNER_PRODUCT) + +A distância euclidiana toma a diferença quadrática em cada dimensão, soma as diferenças em todas as dimensões e, em seguida, toma a raiz quadrada. Isso é o mesmo que a distância em 2D e 3D que usamos diariamente. +O produto interno não é usado como um Index de similaridade como é, e a similaridade de cosseno que leva o produto interno depois de ser normalizado pela norma L2 é geralmente usada. + +O que é melhor depende do caso, mas a similaridade de cosseno é frequentemente usada na incorporação obtida pelo word2vec e modelos de recuperação de imagem semelhantes aprendidos pelo ArcFace. Se você quiser fazer a normalização l2 no vetor X com numpy, você pode fazê-lo com o seguinte código com eps pequeno o suficiente para evitar a divisão 0. + +```python +X_normed = X / np.maximum(eps, np.linalg.norm(X, ord=2, axis=-1, keepdims=True)) +``` + +Além disso, para a Construção de Index, você pode alterar o Index de distância usado para cálculo escolhendo o valor a ser passado como o terceiro argumento. + +```python +index = faiss.index_factory(dimention, text, faiss.METRIC_INNER_PRODUCT) +``` + +## FI +IVF (Inverted file indexes) é um algoritmo semelhante ao Index invertido na pesquisa de texto completo. +Durante o aprendizado, o destino da pesquisa é agrupado com kmeans e o particionamento Voronoi é realizado usando o centro de cluster. A cada ponto de dados é atribuído um cluster, por isso criamos um dicionário que procura os pontos de dados dos clusters. + +Por exemplo, se os clusters forem atribuídos da seguinte forma +|index|Cluster| +|-----|-------| +|1|A| +|2|B| +|3|A| +|4|C| +|5|B| + +O Index invertido resultante se parece com isso: + +| cluster | Index | +|-------|-----| +| A | 1, 3 | +| B | 2 5 | +| C | 4 | + +Ao pesquisar, primeiro pesquisamos n_probe clusters dos clusters e, em seguida, calculamos as distâncias para os pontos de dados pertencentes a cada cluster. + +# Parâmetro de recomendação +Existem diretrizes oficiais sobre como escolher um Index, então vou explicar de +acordo. https://github.com/facebookresearch/faiss/wiki/Guidelines-to-choose-an-index + +Para conjuntos de dados abaixo de 1M, o 4bit-PQ é o método mais eficiente disponível no faiss em abril de 2023. +Combinando isso com a fertilização in vitro, estreitando os candidatos com 4bit-PQ e, finalmente, recalcular a distância com um Index preciso pode ser descrito usando a seguinte fábrica de Indexs. + +```python +index = faiss.index_factory(256, "IVF1024,PQ128x4fs,RFlat") +``` + +## Parâmetros recomendados para FIV +Considere o caso de muitas FIVs. Por exemplo, se a quantização grosseira por FIV for realizada para o número de dados, isso é o mesmo que uma pesquisa exaustiva ingênua e é ineficiente. +Para 1M ou menos, os valores de FIV são recomendados entre 4*sqrt(N) ~ 16*sqrt(N) para N número de pontos de dados. + +Como o tempo de cálculo aumenta proporcionalmente ao número de n_sondas, consulte a precisão e escolha adequadamente. Pessoalmente, não acho que o RVC precise de tanta precisão, então n_probe = 1 está bem. + +## FastScan +O FastScan é um método que permite a aproximação de alta velocidade de distâncias por quantização de produto cartesiano, realizando-as em registros. +A quantização cartesiana do produto executa o agrupamento independentemente para cada dimensão d (geralmente d = 2) durante o aprendizado, calcula a distância entre os agrupamentos com antecedência e cria uma tabela de pesquisa. No momento da previsão, a distância de cada dimensão pode ser calculada em O(1) olhando para a tabela de pesquisa. +Portanto, o número que você especifica após PQ geralmente especifica metade da dimensão do vetor. + +Para uma descrição mais detalhada do FastScan, consulte a documentação oficial. +https://github.com/facebookresearch/faiss/wiki/Fast-accumulation-of-PQ-and-AQ-codes-(FastScan) + +## RFlat +RFlat é uma instrução para recalcular a distância aproximada calculada pelo FastScan com a distância exata especificada pelo terceiro argumento da Construção de Index. +Ao obter áreas k, os pontos k*k_factor são recalculados. diff --git a/docs/pt-BR/faq_pt-BR.md b/docs/pt-BR/faq_pt-BR.md new file mode 100644 index 0000000..0b52470 --- /dev/null +++ b/docs/pt-BR/faq_pt-BR.md @@ -0,0 +1,224 @@ +# FAQ AI HUB BRASIL +## O que é epoch, quantos utilizar, quanto de dataset utilizar e qual à configuração interessante? +Epochs basicamente quantas vezes o seu dataset foi treinado. + +Recomendado ler Q8 e Q9 no final dessa página pra entender mais sobre dataset e epochs + +__**Não é uma regra, mas opinião:**__ + +### **Mangio-Crepe Hop Length** +- 64 pra cantores e dubladores +- 128(padrão) para os demais (editado) + +### **Epochs e dataset** +600epoch para cantores - --dataset entre 10 e 50 min desnecessario mais que 50 minutos-- +300epoch para os demais - --dataset entre 10 e 50 min desnecessario mais que 50 minutos-- + +### **Tom** +magio-crepe se for audios extraído de alguma musica +harvest se for de estúdio
+ +## O que é index? +Basicamente o que define o sotaque. Quanto maior o numero, mas próximo o sotaque fica do original. Porém, quando o modelo é bem, não é necessário um index.
+ +## O que significa cada sigla (pm, harvest, crepe, magio-crepe, RMVPE)? + +- pm = extração mais rápida, mas discurso de qualidade inferior; +- harvest = graves melhores, mas extremamente lentos; +- dio = conversão rápida mas pitch ruim; +- crepe = melhor qualidade, mas intensivo em GPU; +- crepe-tiny = mesma coisa que o crepe, só que com a qualidade um pouco inferior; +- **mangio-crepe = melhor qualidade, mais otimizado; (MELHOR OPÇÃO)** +- mangio-crepe-tiny = mesma coisa que o mangio-crepe, só que com a qualidade um pouco inferior; +- RMVPE: um modelo robusto para estimativa de afinação vocal em música polifônica;
+ +## Pra rodar localmente, quais os requisitos minimos? +Já tivemos relatos de pessoas com GTX 1050 rodando inferencia, se for treinar numa 1050 vai demorar muito mesmo e inferior a isso, normalmente da tela azul + +O mais importante é placa de vídeo, vram na verdade +Se você tiver 4GB ou mais, você tem uma chance. + +**NOS DOIS CASOS NÃO É RECOMENDADO UTILIZAR O PC ENQUANTO ESTÁ UTILIZNDO, CHANCE DE TELA AZUL É ALTA** +### Inference +Não é algo oficial para requisitos minimos +- Placa de vídeo: nvidia de 4gb +- Memoria ram: 8gb +- CPU: ? +- Armanezamento: 20gb (sem modelos) + +### Treinamento de voz +Não é algo oficial para requisitos minimos +- Placa de vídeo: nvidia de 6gb +- Memoria ram: 16gb +- CPU: ? +- Armanezamento: 20gb (sem modelos)
+ +## Limite de GPU no Google Colab excedido, apenas CPU o que fazer? +Recomendamos esperar outro dia pra liberar mais 15gb ou 12 horas pra você. Ou você pode contribuir com o Google pagando algum dos planos, ai aumenta seu limite.
+Utilizar apenas CPU no Google Colab demora DEMAIS.
+ + +## Google Colab desconectando com muita frequencia, o que fazer? +Neste caso realmente não tem muito o que fazer. Apenas aguardar o proprietário do código corrigir ou a gente do AI HUB Brasil achar alguma solução. Isso acontece por diversos motivos, um incluindo a Google barrando o treinamento de voz.
+ +## O que é Batch Size/Tamanho de lote e qual numero utilizar? +Batch Size/Tamanho do lote é basicamente quantos epoch faz ao mesmo tempo. Se por 20, ele fazer 20 epoch ao mesmo tempo e isso faz pesar mais na máquina e etc.
+ +No Google Colab você pode utilizar até 20 de boa.
+Se rodando localmente, depende da sua placa de vídeo, começa por baixo (6) e vai testando.
+ +## Sobre backup na hora do treinamento +Backup vai de cada um. Eu quando uso a ``easierGUI`` utilizo a cada 100 epoch (meu caso isolado). +No colab, se instavel, coloque a cada 10 epoch +Recomendo utilizarem entre 25 e 50 pra garantir. + +Lembrando que cada arquivo geral é por volta de 50mb, então tenha muito cuidado quanto você coloca. Pois assim pode acabar lotando seu Google Drive ou seu PC. + +Depois de finalizado, da pra apagar os epoch de backup.
+ +## Como continuar da onde parou pra fazer mais epochs? +Primeira coisa que gostaria de lembrar, não necessariamente quanto mais epochs melhor. Se fizer epochs demais vai dar **overtraining** o que pode ser ruim. + +### GUI NORMAL +- Inicie normalmente a GUI novamente. +- Na aba de treino utilize o MESMO nome que estava treinando, assim vai continuar o treino onde parou o ultimo backup. +- Ignore as opções ``Processar o Conjunto de dados`` e ``Extrair Tom`` +- Antes de clicar pra treinar, arrume os epoch, bakcup e afins. + - Obviamente tem que ser um numero maior do qu estava em epoch. + - Backup você pode aumentar ou diminuir +- Agora você vai ver a opção ``Carregue o caminho G do modelo base pré-treinado:`` e ``Carregue o caminho D do modelo base pré-treinado:`` + -Aqui você vai por o caminho dos modelos que estão em ``./logs/minha-voz`` + - Vai ficar algo parecido com isso ``e:/RVC/logs/minha-voz/G_0000.pth`` e ``e:/RVC/logs/minha-voz/D_0000.pth`` +-Coloque pra treinar + +**Lembrando que a pasta logs tem que ter todos os arquivos e não somente o arquivo ``G`` e ``D``** + +### EasierGUI +- Inicie normalmente a easierGUI novamente. +- Na aba de treino utilize o MESMO nome que estava treinando, assim vai continuar o treino onde parou o ultimo backup. +- Selecione 'Treinar modelo', pode pular os 2 primeiros passos já que vamos continuar o treino.

+ + +# FAQ Original traduzido +## Q1: erro ffmpeg/erro utf8. +Provavelmente não é um problema do FFmpeg, mas sim um problema de caminho de áudio; + +O FFmpeg pode encontrar um erro ao ler caminhos contendo caracteres especiais como spaces e (), o que pode causar um erro FFmpeg; e quando o áudio do conjunto de treinamento contém caminhos chineses, gravá-lo em filelist.txt pode causar um erro utf8.
+ +## Q2:Não é possível encontrar o arquivo de Index após "Treinamento com um clique". +Se exibir "O treinamento está concluído. O programa é fechado ", então o modelo foi treinado com sucesso e os erros subsequentes são falsos; + +A falta de um arquivo de index 'adicionado' após o treinamento com um clique pode ser devido ao conjunto de treinamento ser muito grande, fazendo com que a adição do index fique presa; isso foi resolvido usando o processamento em lote para adicionar o index, o que resolve o problema de sobrecarga de memória ao adicionar o index. Como solução temporária, tente clicar no botão "Treinar Index" novamente.
+ +## Q3:Não é possível encontrar o modelo em “Modelo de voz” após o treinamento +Clique em "Atualizar lista de voz" ou "Atualizar na EasyGUI e verifique novamente; se ainda não estiver visível, verifique se há erros durante o treinamento e envie capturas de tela do console, da interface do usuário da Web e dos ``logs/experiment_name/*.log`` para os desenvolvedores para análise posterior.
+ +## Q4:Como compartilhar um modelo/Como usar os modelos dos outros? +Os arquivos ``.pth`` armazenados em ``*/logs/minha-voz`` não são destinados para compartilhamento ou inference, mas para armazenar os checkpoits do experimento para reprodutibilidade e treinamento adicional. O modelo a ser compartilhado deve ser o arquivo ``.pth`` de 60+MB na pasta **weights**; + +No futuro, ``weights/minha-voz.pth`` e ``logs/minha-voz/added_xxx.index`` serão mesclados em um único arquivo de ``weights/minha-voz.zip`` para eliminar a necessidade de entrada manual de index; portanto, compartilhe o arquivo zip, não somente o arquivo .pth, a menos que você queira continuar treinando em uma máquina diferente; + +Copiar/compartilhar os vários arquivos .pth de centenas de MB da pasta de logs para a pasta de weights para inference forçada pode resultar em erros como falta de f0, tgt_sr ou outras chaves. Você precisa usar a guia ckpt na parte inferior para manualmente ou automaticamente (se as informações forem encontradas nos ``logs/minha-voz``), selecione se deseja incluir informações de tom e opções de taxa de amostragem de áudio de destino e, em seguida, extrair o modelo menor. Após a extração, haverá um arquivo pth de 60+ MB na pasta de weights, e você pode atualizar as vozes para usá-lo.
+ +## Q5 Erro de conexão: +Para sermos otimistas, aperte F5/recarregue a página, pode ter sido apenas um bug da GUI + +Se não... +Você pode ter fechado o console (janela de linha de comando preta). +Ou o Google Colab, no caso do Colab, as vezes pode simplesmente fechar
+ +## Q6: Pop-up WebUI 'Valor esperado: linha 1 coluna 1 (caractere 0)'. +Desative o proxy LAN do sistema/proxy global e atualize.
+ +## Q7:Como treinar e inferir sem a WebUI? +Script de treinamento: +
Você pode executar o treinamento em WebUI primeiro, e as versões de linha de comando do pré-processamento e treinamento do conjunto de dados serão exibidas na janela de mensagens.
+ +Script de inference: +
https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/myinfer.py
+ + +por exemplo
+ +``runtime\python.exe myinfer.py 0 "E:\audios\1111.wav" "E:\RVC\logs\minha-voz\added_IVF677_Flat_nprobe_7.index" harvest "test.wav" "weights/mi-test.pth" 0.6 cuda:0 True``
+ + +f0up_key=sys.argv[1]
+input_path=sys.argv[2]
+index_path=sys.argv[3]
+f0method=sys.argv[4]#harvest or pm
+opt_path=sys.argv[5]
+model_path=sys.argv[6]
+index_rate=float(sys.argv[7])
+device=sys.argv[8]
+is_half=bool(sys.argv[9])
+ +## Q8: Erro Cuda/Cuda sem memória. +Há uma pequena chance de que haja um problema com a configuração do CUDA ou o dispositivo não seja suportado; mais provavelmente, não há memória suficiente (falta de memória).
+ +Para treinamento, reduza o (batch size) tamanho do lote (se reduzir para 1 ainda não for suficiente, talvez seja necessário alterar a placa gráfica); para inference, ajuste as configurações x_pad, x_query, x_center e x_max no arquivo config.py conforme necessário. Cartões de memória 4G ou inferiores (por exemplo, 1060(3G) e várias placas 2G) podem ser abandonados, enquanto os placas de vídeo com memória 4G ainda têm uma chance.
+ +## Q9:Quantos total_epoch são ótimos? +Se a qualidade de áudio do conjunto de dados de treinamento for ruim e o nível de ruído for alto, **20-30 epochs** são suficientes. Defini-lo muito alto não melhorará a qualidade de áudio do seu conjunto de treinamento de baixa qualidade.
+ +Se a qualidade de áudio do conjunto de treinamento for alta, o nível de ruído for baixo e houver duração suficiente, você poderá aumentá-lo. **200 é aceitável** (uma vez que o treinamento é rápido e, se você puder preparar um conjunto de treinamento de alta qualidade, sua GPU provavelmente poderá lidar com uma duração de treinamento mais longa sem problemas).
+ +## Q10:Quanto tempo de treinamento é necessário? + +**Recomenda-se um conjunto de dados de cerca de 10 min a 50 min.**
+ +Com garantia de alta qualidade de som e baixo ruído de fundo, mais pode ser adicionado se o timbre do conjunto de dados for uniforme.
+ +Para um conjunto de treinamento de alto nível (limpo + distintivo), 5min a 10min é bom.
+ +Há algumas pessoas que treinaram com sucesso com dados de 1 a 2 minutos, mas o sucesso não é reproduzível por outros e não é muito informativo.
Isso requer que o conjunto de treinamento tenha um timbre muito distinto (por exemplo, um som de menina de anime arejado de alta frequência) e a qualidade do áudio seja alta; +Dados com menos de 1 minuto, já obtivemo sucesso. Mas não é recomendado.
+ + +## Q11:Qual é a taxa do index e como ajustá-la? +Se a qualidade do tom do modelo pré-treinado e da fonte de inference for maior do que a do conjunto de treinamento, eles podem trazer a qualidade do tom do resultado do inference, mas ao custo de um possível viés de tom em direção ao tom do modelo subjacente/fonte de inference, em vez do tom do conjunto de treinamento, que é geralmente referido como "vazamento de tom".
+ +A taxa de index é usada para reduzir/resolver o problema de vazamento de timbre. Se a taxa do index for definida como 1, teoricamente não há vazamento de timbre da fonte de inference e a qualidade do timbre é mais tendenciosa em relação ao conjunto de treinamento. Se o conjunto de treinamento tiver uma qualidade de som mais baixa do que a fonte de inference, uma taxa de index mais alta poderá reduzir a qualidade do som. Reduzi-lo a 0 não tem o efeito de usar a mistura de recuperação para proteger os tons definidos de treinamento.
+ +Se o conjunto de treinamento tiver boa qualidade de áudio e longa duração, aumente o total_epoch, quando o modelo em si é menos propenso a se referir à fonte inferida e ao modelo subjacente pré-treinado, e há pouco "vazamento de tom", o index_rate não é importante e você pode até não criar/compartilhar o arquivo de index.
+ +## Q12:Como escolher o GPU ao inferir? +No arquivo ``config.py``, selecione o número da placa em "device cuda:".
+ +O mapeamento entre o número da placa e a placa gráfica pode ser visto na seção de informações da placa gráfica da guia de treinamento.
+ +## Q13:Como usar o modelo salvo no meio do treinamento? +Salvar via extração de modelo na parte inferior da guia de processamento do ckpt.
+ +## Q14: Erro de arquivo/memória (durante o treinamento)? +Muitos processos e sua memória não é suficiente. Você pode corrigi-lo por: + +1. Diminuir a entrada no campo "Threads da CPU". +2. Diminuir o tamanho do conjunto de dados. + +## Q15: Como continuar treinando usando mais dados + +passo 1: coloque todos os dados wav no path2. + +etapa 2: exp_name2 + path2 -> processar conjunto de dados e extrair recurso. + +passo 3: copie o arquivo G e D mais recente de exp_name1 (seu experimento anterior) para a pasta exp_name2. + +passo 4: clique em "treinar o modelo" e ele continuará treinando desde o início da época anterior do modelo exp. + +## Q16: erro sobre llvmlite.dll + +OSError: Não foi possível carregar o arquivo de objeto compartilhado: llvmlite.dll + +FileNotFoundError: Não foi possível encontrar o módulo lib\site-packages\llvmlite\binding\llvmlite.dll (ou uma de suas dependências). Tente usar o caminho completo com sintaxe de construtor. + +O problema acontecerá no Windows, instale https://aka.ms/vs/17/release/vc_redist.x64.exe e será corrigido. + +## Q17: RuntimeError: O tamanho expandido do tensor (17280) deve corresponder ao tamanho existente (0) na dimensão 1 não singleton. Tamanhos de destino: [1, 17280]. Tamanhos de tensor: [0] + +Exclua os arquivos wav cujo tamanho seja significativamente menor que outros e isso não acontecerá novamente. Em seguida, clique em "treinar o modelo" e "treinar o índice". + +## Q18: RuntimeError: O tamanho do tensor a (24) deve corresponder ao tamanho do tensor b (16) na dimensão não singleton 2 + +Não altere a taxa de amostragem e continue o treinamento. Caso seja necessário alterar, o nome do exp deverá ser alterado e o modelo será treinado do zero. Você também pode copiar o pitch e os recursos (pastas 0/1/2/2b) extraídos da última vez para acelerar o processo de treinamento. + diff --git a/docs/pt-BR/training_tips_pt-BR.md b/docs/pt-BR/training_tips_pt-BR.md new file mode 100644 index 0000000..985ab4f --- /dev/null +++ b/docs/pt-BR/training_tips_pt-BR.md @@ -0,0 +1,65 @@ +Instruções e dicas para treinamento RVC +====================================== +Estas DICAS explicam como o treinamento de dados é feito. + +# Fluxo de treinamento +Explicarei ao longo das etapas na guia de treinamento da GUI. + +## Passo 1 +Defina o nome do experimento aqui. + +Você também pode definir aqui se o modelo deve levar em consideração o pitch. +Se o modelo não considerar o tom, o modelo será mais leve, mas não será adequado para cantar. + +Os dados de cada experimento são colocados em `/logs/nome-do-seu-modelo/`. + +## Passo 2a +Carrega e pré-processa áudio. + +### Carregar áudio +Se você especificar uma pasta com áudio, os arquivos de áudio dessa pasta serão lidos automaticamente. +Por exemplo, se você especificar `C:Users\hoge\voices`, `C:Users\hoge\voices\voice.mp3` será carregado, mas `C:Users\hoge\voices\dir\voice.mp3` será Não carregado. + +Como o ffmpeg é usado internamente para leitura de áudio, se a extensão for suportada pelo ffmpeg, ela será lida automaticamente. +Após converter para int16 com ffmpeg, converta para float32 e normalize entre -1 e 1. + +### Eliminar ruído +O áudio é suavizado pelo filtfilt do scipy. + +### Divisão de áudio +Primeiro, o áudio de entrada é dividido pela detecção de partes de silêncio que duram mais que um determinado período (max_sil_kept=5 segundos?). Após dividir o áudio no silêncio, divida o áudio a cada 4 segundos com uma sobreposição de 0,3 segundos. Para áudio separado em 4 segundos, após normalizar o volume, converta o arquivo wav para `/logs/nome-do-seu-modelo/0_gt_wavs` e, em seguida, converta-o para taxa de amostragem de 16k para `/logs/nome-do-seu-modelo/1_16k_wavs ` como um arquivo wav. + +## Passo 2b +### Extrair pitch +Extraia informações de pitch de arquivos wav. Extraia as informações de pitch (=f0) usando o método incorporado em Parselmouth ou pyworld e salve-as em `/logs/nome-do-seu-modelo/2a_f0`. Em seguida, converta logaritmicamente as informações de pitch para um número inteiro entre 1 e 255 e salve-as em `/logs/nome-do-seu-modelo/2b-f0nsf`. + +### Extrair feature_print +Converta o arquivo wav para incorporação antecipadamente usando HuBERT. Leia o arquivo wav salvo em `/logs/nome-do-seu-modelo/1_16k_wavs`, converta o arquivo wav em recursos de 256 dimensões com HuBERT e salve no formato npy em `/logs/nome-do-seu-modelo/3_feature256`. + +## Passo 3 +treinar o modelo. +### Glossário para iniciantes +No aprendizado profundo, o conjunto de dados é dividido e o aprendizado avança aos poucos. Em uma atualização do modelo (etapa), os dados batch_size são recuperados e previsões e correções de erros são realizadas. Fazer isso uma vez para um conjunto de dados conta como um epoch. + +Portanto, o tempo de aprendizagem é o tempo de aprendizagem por etapa x (o número de dados no conjunto de dados/tamanho do lote) x o número de epoch. Em geral, quanto maior o tamanho do lote, mais estável se torna o aprendizado (tempo de aprendizado por etapa ÷ tamanho do lote) fica menor, mas usa mais memória GPU. A RAM da GPU pode ser verificada com o comando nvidia-smi. O aprendizado pode ser feito em pouco tempo aumentando o tamanho do lote tanto quanto possível de acordo com a máquina do ambiente de execução. + +### Especifique o modelo pré-treinado +O RVC começa a treinar o modelo a partir de pesos pré-treinados em vez de 0, para que possa ser treinado com um pequeno conjunto de dados. + +Por padrão + +- Se você considerar o pitch, ele carrega `rvc-location/pretrained/f0G40k.pth` e `rvc-location/pretrained/f0D40k.pth`. +- Se você não considerar o pitch, ele carrega `rvc-location/pretrained/f0G40k.pth` e `rvc-location/pretrained/f0D40k.pth`. + +Ao aprender, os parâmetros do modelo são salvos em `logs/nome-do-seu-modelo/G_{}.pth` e `logs/nome-do-seu-modelo/D_{}.pth` para cada save_every_epoch, mas especificando nesse caminho, você pode começar a aprender. Você pode reiniciar ou iniciar o treinamento a partir de weights de modelo aprendidos em um experimento diferente. + +### Index de aprendizado +O RVC salva os valores de recursos do HuBERT usados durante o treinamento e, durante a inferência, procura valores de recursos que sejam semelhantes aos valores de recursos usados durante o aprendizado para realizar a inferência. Para realizar esta busca em alta velocidade, o index é aprendido previamente. +Para aprendizagem de index, usamos a biblioteca de pesquisa de associação de áreas aproximadas faiss. Leia o valor do recurso `logs/nome-do-seu-modelo/3_feature256` e use-o para aprender o index, e salve-o como `logs/nome-do-seu-modelo/add_XXX.index`. + +(A partir da versão 20230428update, ele é lido do index e não é mais necessário salvar/especificar.) + +### Descrição do botão +- Treinar modelo: Após executar o passo 2b, pressione este botão para treinar o modelo. +- Treinar índice de recursos: após treinar o modelo, execute o aprendizado do index. +- Treinamento com um clique: etapa 2b, treinamento de modelo e treinamento de index de recursos, tudo de uma vez. \ No newline at end of file diff --git a/i18n/locale/pt_BR.json b/i18n/locale/pt_BR.json new file mode 100644 index 0000000..f297d79 --- /dev/null +++ b/i18n/locale/pt_BR.json @@ -0,0 +1,188 @@ +{ + "很遗憾您这没有能用的显卡来支持您训练": "Infelizmente, não há GPU compatível disponível para apoiar o seu treinamento.", + "是": "Sim", + "step1:正在处理数据": "Etapa 1: Processamento de dados", + "step2a:无需提取音高": "Etapa 2a: Ignorando a extração de tom", + "step2b:正在提取特征": "Etapa 2b: Extraindo recursos", + "step3a:正在训练模型": "Etapa 3a: Treinamento do modelo iniciado", + "全流程结束!": "Todos os processos foram concluídos!", + "本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责.
如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录使用需遵守的协议-LICENSE.txt." :"
Este software é de código aberto sob a licença MIT. O autor não tem nenhum controle sobre o software. Os usuários que usam o software e distribuem os sons exportados pelo software são os únicos responsáveis.
Se você não concordar com esta cláusula, você não pode usar ou fazer referência a quaisquer códigos e arquivos dentro do pacote de software. Consulte o diretório raiz LICENSE para obter detalhes.
", + "模型推理": "Inference", + "推理音色": "Escolha o seu Modelo:", + "刷新音色列表和索引路径": "Atualizar lista de voz e caminho do Index", + "卸载音色省显存": "Descarregue a voz para liberar a memória da GPU:", + "请选择说话人id": "Selecione Palestrantes/Cantores ID:", + "男转女推荐+12key, 女转男推荐-12key, 如果音域爆炸导致音色失真也可以自己调整到合适音域. ": "Recomendado +12 chave para conversão de homem para mulher e -12 chave para conversão de mulher para homem. Se a faixa de som for muito longe e a voz estiver distorcida, você também pode ajustá-la à faixa apropriada por conta própria.", + "变调(整数, 半音数量, 升八度12降八度-12)": "Mude o tom aqui. Se a voz for do mesmo sexo, não é necessario alterar (12 caso seja Masculino para feminino, -12 caso seja ao contrário).", + "Add audio's name to the path to the audio file to be processed (default is the correct format example) Remove the path to use an audio from the dropdown list:": "Caminho do arquivo de áudio a ser processado (o padrão é o exemplo de formato abaixo):", + "Auto detect audio path and select from the dropdown:": "Auto detect audio path and select from the dropdown:", + "选择音高提取算法:输入歌声可用pm提速,高质量语音但CPU差可用dio提速,harvest质量更好但慢,rmvpe效果最好且微吃CPU/GPU": "Selecione o algoritmo de extração de tom \n'pm': extração mais rápida, mas discurso de qualidade inferior; \n'harvest': graves melhores, mas extremamente lentos; \n'crepe': melhor qualidade (mas intensivo em GPU);\n rmvpe tem o melhor efeito e consome menos CPU/GPU.", + "crepe_hop_length": "Mangio-Crepe Hop Length. Números mais altos reduzirão a chance de mudanças extremas de tom, mas números mais baixos aumentarão a precisão.", + "特征检索库文件路径": "Caminho do arquivo do banco de dados de pesquisa de recursos", + ">=3则使用对harvest音高识别的结果使用中值滤波,数值为滤波半径,使用可以削弱哑音": ">=3, use o filtro mediano para o resultado do reconhecimento do tom da heverst, e o valor é o raio do filtro, que pode enfraquecer o mudo.", + "特征检索库文件路径,为空则使用下拉的选择结果": "Caminho para o arquivo de Index. Deixe em branco para usar o resultado selecionado no menu debaixo:", + "特征文件路径": "Caminho para o arquivo de feição:", + "检索特征占比": "Taxa de recurso de recuperação:", + "后处理重采样至最终采样率,0为不进行重采样": "Reamostragem pós-processamento para a taxa de amostragem final, 0 significa sem reamostragem:", + "输入源音量包络替换输出音量包络融合比例,越靠近1越使用输出包络": "O envelope de volume da fonte de entrada substitui a taxa de fusão do envelope de volume de saída, quanto mais próximo de 1, mais o envelope de saída é usado:", + "保护清辅音和呼吸声,防止电音撕裂等artifact,拉满0.5不开启,调低加大保护力度但可能降低索引效果": "Proteja consoantes sem voz e sons respiratórios, evite artefatos como quebra de som eletrônico e desligue-o quando estiver cheio de 0,5. Diminua-o para aumentar a proteção, mas pode reduzir o efeito de indexação:", + "F0曲线文件, 可选, 一行一个音高, 代替默认F0及升降调": "Arquivo de curva F0 (opcional). Um arremesso por linha. Substitui a modulação padrão F0 e tom:", + "转换": "Converter", + "输出信息": "Informação de saída", + "输出音频(右下角三个点,点了可以下载)": "Exportar áudio (clique nos três pontos no canto inferior direito para baixar)", + "批量转换, 输入待转换音频文件夹, 或上传多个音频文件, 在指定文件夹(默认opt)下输出转换的音频. ": "Conversão em Massa.", + "指定输出文件夹": "Especifique a pasta de saída:", + "输入待处理音频文件夹路径(去文件管理器地址栏拷就行了)": "Caminho da pasta de áudio a ser processada (copie-o da barra de endereços do gerenciador de arquivos):", + "也可批量输入音频文件, 二选一, 优先读文件夹": "Você também pode inserir arquivos de áudio em lotes. Escolha uma das duas opções. É dada prioridade à leitura da pasta.", + "导出文件格式": "Qual formato de arquivo você prefere?", + "伴奏人声分离&去混响&去回声": "UVR5", + "输入待处理音频文件夹路径": "Caminho da pasta de áudio a ser processada:", + "模型": "Modelo", + "指定输出主人声文件夹": "Especifique a pasta de saída para vocais:", + "指定输出非主人声文件夹": "Informar a pasta de saída para acompanhamento:", + "训练": "Treinar", + "step1: 填写实验配置. 实验数据放在logs下, 每个实验一个文件夹, 需手工输入实验名路径, 内含实验配置, 日志, 训练得到的模型文件. ": "Etapa 1: Preencha a configuração experimental. Os dados experimentais são armazenados na pasta 'logs', com cada experimento tendo uma pasta separada. Digite manualmente o caminho do nome do experimento, que contém a configuração experimental, os logs e os arquivos de modelo treinados.", + "输入实验名": "Nome da voz:", + "目标采样率": "Taxa de amostragem:", + "模型是否带音高指导(唱歌一定要, 语音可以不要)": "Se o modelo tem orientação de tom (necessário para cantar, opcional para fala):", + "版本": "Versão", + "提取音高和处理数据使用的CPU进程数": "Número de processos de CPU usados para extração de tom e processamento de dados:", + "step2a: 自动遍历训练文件夹下所有可解码成音频的文件并进行切片归一化, 在实验目录下生成2个wav文件夹; 暂时只支持单人训练. ": "Etapa 2a: Percorra automaticamente todos os arquivos na pasta de treinamento que podem ser decodificados em áudio e execute a normalização da fatia. Gera 2 pastas wav no diretório do experimento. Atualmente, apenas o treinamento de um único cantor/palestrante é suportado.", + "输入训练文件夹路径": "Caminho da pasta de treinamento:", + "请指定说话人id": "Especifique o ID do locutor/cantor:", + "处理数据": "Processar o Conjunto de Dados", + "step2b: 使用CPU提取音高(如果模型带音高), 使用GPU提取特征(选择卡号)": "Etapa 2b: Use a CPU para extrair o tom (se o modelo tiver tom), use a GPU para extrair recursos (selecione o índice da GPU):", + "以-分隔输入使用的卡号, 例如 0-1-2 使用卡0和卡1和卡2": "Digite o (s) índice(s) da GPU separados por '-', por exemplo, 0-1-2 para usar a GPU 0, 1 e 2:", + "显卡信息": "Informações da GPU", + "选择音高提取算法:输入歌声可用pm提速,高质量语音但CPU差可用dio提速,harvest质量更好但慢": "Selecione o algoritmo de extração de tom ('pm': extração mais rápida, mas fala de baixa qualidade; 'dio': fala melhorada, mas extração mais lenta; 'harvest': melhor qualidade, mas extração mais lenta):", + "特征提取": "Extrair Tom", + "step3: 填写训练设置, 开始训练模型和索引": "Etapa 3: Preencha as configurações de treinamento e comece a treinar o modelo e o Index", + "保存频率save_every_epoch": "Faça backup a cada # de Epoch:", + "总训练轮数total_epoch": "Número total de ciclos(epoch) de treino (se escolher um valor alto demais, o seu modelo parecerá terrivelmente sobretreinado):", + "每张显卡的batch_size": "Batch Size (DEIXE COMO ESTÁ a menos que saiba o que está fazendo, no Colab pode deixar até 20!):", + "是否仅保存最新的ckpt文件以节省硬盘空间": "Só deve salvar apenas o arquivo ckpt mais recente para economizar espaço em disco:", + "否": "Não", + "是否缓存所有训练集至显存. 10min以下小数据可缓存以加速训练, 大数据缓存会炸显存也加不了多少速": "Se deve armazenar em cache todos os conjuntos de treinamento na memória de vídeo. Pequenos dados com menos de 10 minutos podem ser armazenados em cache para acelerar o treinamento, e um cache de dados grande irá explodir a memória de vídeo e não aumentar muito a velocidade:", + "是否在每次保存时间点将最终小模型保存至weights文件夹": "Salve um pequeno modelo final na pasta 'weights' em cada ponto de salvamento:", + "加载预训练底模G路径": "Carregue o caminho G do modelo base pré-treinado:", + "加载预训练底模D路径": "Carregue o caminho D do modelo base pré-treinado:", + "训练模型": "Treinar Modelo", + "训练特征索引": "Treinar Index", + "一键训练": "Treinamento com um clique", + "ckpt处理": "processamento ckpt", + "模型融合, 可用于测试音色融合": "A fusão modelo, pode ser usada para testar a fusão do timbre", + "A模型路径": "Caminho para o Modelo A:", + "B模型路径": "Caminho para o Modelo B:", + "A模型权重": "Peso (w) para o modelo A:", + "模型是否带音高指导": "Se o modelo tem orientação de tom:", + "要置入的模型信息": "Informações do modelo a ser colocado:", + "保存的模型名不带后缀": "Nome do modelo salvo (sem extensão):", + "模型版本型号": "Versão:", + "融合": "Fusão", + "修改模型信息(仅支持weights文件夹下提取的小模型文件)": "Modificar informações do modelo (suportado apenas para arquivos de modelo pequenos extraídos da pasta 'weights')", + "模型路径": "Caminho para o Modelo:", + "要改的模型信息": "Informações do modelo a ser modificado:", + "保存的文件名, 默认空为和源文件同名": "Salvar nome do arquivo (padrão: igual ao arquivo de origem):", + "修改": "Editar", + "查看模型信息(仅支持weights文件夹下提取的小模型文件)": "Exibir informações do modelo (suportado apenas para arquivos de modelo pequenos extraídos da pasta 'weights')", + "查看": "Visualizar", + "模型提取(输入logs文件夹下大文件模型路径),适用于训一半不想训了模型没有自动提取保存小文件模型,或者想测试中间模型的情况": "Extração do modelo (insira o caminho do modelo de arquivo grande na pasta 'logs'). Isso é útil se você quiser interromper o treinamento no meio do caminho e extrair e salvar manualmente um arquivo de modelo pequeno, ou se quiser testar um modelo intermediário:", + "保存名": "Salvar nome", + "模型是否带音高指导,1是0否": "Se o modelo tem orientação de passo (1: sim, 0: não):", + "提取": "Extrato", + "Onnx导出": "Exportar Onnx", + "RVC模型路径": "Caminho do Modelo RVC:", + "Onnx输出路径": "Caminho de exportação ONNX:", + "MoeVS模型": "Modelo MoeVS", + "导出Onnx模型": "Exportar Modelo Onnx", + "常见问题解答": "FAQ (Perguntas frequentes)", + "招募音高曲线前端编辑器": "Recrutamento de editores front-end para curvas de tom", + "加开发群联系我xxxxx": "Junte-se ao grupo de desenvolvimento e entre em contato comigo em xxxxx", + "点击查看交流、问题反馈群号": "Clique para ver o número do grupo de comunicação e feedback do problema", + "xxxxx": "xxxxx", + "加载模型": "Modelo", + "Hubert模型": "Modelo Hubert", + "选择.pth文件": "Selecione o Arquivo", + "选择.index文件": "Selecione o Index", + "选择.npy文件": "Selecione o Arquivo", + "输入设备": "Dispositivo de entrada", + "输出设备": "Dispositivo de saída", + "音频设备(请使用同种类驱动)": "Dispositivo de áudio (use o mesmo tipo de driver)", + "响应阈值": "Limiar de resposta", + "音调设置": "Configurações de tom", + "Index Rate": "Taxa do Index", + "常规设置": "Configurações gerais", + "采样长度": "Comprimento da Amostra", + "淡入淡出长度": "Comprimento de desvanecimento", + "额外推理时长": "Tempo extra de inferência", + "输入降噪": "Redução de ruído de entrada", + "输出降噪": "Redução de ruído de saída", + "性能设置": "Configurações de desempenho.", + "开始音频转换": "Iniciar conversão de áudio", + "停止音频转换": "Conversão de áudio", + "推理时间(ms):": "Tempo de inferência (ms):", + "人声伴奏分离批量处理, 使用UVR5模型。
合格的文件夹路径格式举例: E:\\codes\\py39\\vits_vc_gpu\\白鹭霜华测试样例(去文件管理器地址栏拷就行了)。
模型分为三类:
1、保留人声:不带和声的音频选这个,对主人声保留比HP5更好。内置HP2和HP3两个模型,HP3可能轻微漏伴奏但对主人声保留比HP2稍微好一丁点;
2、仅保留主人声:带和声的音频选这个,对主人声可能有削弱。内置HP5一个模型;
3、去混响、去延迟模型(by FoxJoy):
  (1)MDX-Net(onnx_dereverb):对于双通道混响是最好的选择,不能去除单通道混响;
 (234)DeEcho:去除延迟效果。Aggressive比Normal去除得更彻底,DeReverb额外去除混响,可去除单声道混响,但是对高频重的板式混响去不干净。
去混响/去延迟,附:
1、DeEcho-DeReverb模型的耗时是另外2个DeEcho模型的接近2倍;
2、MDX-Net-Dereverb模型挺慢的;
3、个人推荐的最干净的配置是先MDX-Net再DeEcho-Aggressive。":"Processamento em lote para separação de acompanhamento vocal usando o modelo UVR5.
Exemplo de um formato de caminho de pasta válido: D:\\caminho\\para a pasta\\entrada\\ (copie-o da barra de endereços do gerenciador de arquivos).
O modelo é dividido em três categorias:
1. Preservar vocais: Escolha esta opção para áudio sem harmonias. Ele preserva os vocais melhor do que o HP5. Inclui dois modelos integrados: HP2 e HP3. O HP3 pode vazar ligeiramente o acompanhamento, mas preserva os vocais um pouco melhor do que o HP2.
2 Preservar apenas os vocais principais: Escolha esta opção para áudio com harmonias. Isso pode enfraquecer os vocais principais. Ele inclui um modelo embutido: HP5.
3. Modelos de de-reverb e de-delay (por FoxJoy):
  (1) MDX-Net: A melhor escolha para remoção de reverb estéreo, mas não pode remover reverb mono;
 (234) DeEcho: Remove efeitos de atraso. O modo agressivo remove mais completamente do que o modo normal. O DeReverb também remove reverb e pode remover reverb mono, mas não de forma muito eficaz para conteúdo de alta frequência fortemente reverberado.
Notas de de-reverb/de-delay:
1. O tempo de processamento para o modelo DeEcho-DeReverb é aproximadamente duas vezes maior que os outros dois modelos DeEcho.
2 O modelo MDX-Net-Dereverb é bastante lento.
3. A configuração mais limpa recomendada é aplicar MDX-Net primeiro e depois DeEcho-Aggressive.", + "本软件以MIT协议开源, 作者不对软件具备任何控制力, 使用软件者、传播软件导出的声音者自负全责.
如不认可该条款, 则不能使用或引用软件包内任何代码和文件. 详见根目录LICENSE.": "
The Mangio-RVC 💻 | Tradução por Krisp e Rafael Godoy Ebert | AI HUB BRASIL
Este software é de código aberto sob a licença MIT. O autor não tem qualquer controle sobre o software. Aqueles que usam o software e divulgam os sons exportados pelo software são totalmente responsáveis.
Se você não concorda com este termo, você não pode usar ou citar nenhum código e arquivo no pacote de software. Para obter detalhes, consulte o diretório raiz O acordo a ser seguido para uso LICENSE
", + "mi-test": "Minha-Voz", + "You need to upload an audio": "Você precisa enviar um áudio", + "Using index:%s.": "Usando index:%s.", + "Index not used.": "Index não utilizado.", + "Success.\n %s\nTime:\n npy:%ss, f0:%ss, infer:%ss": "Sucesso.
%s
Tempo:
npy:%ss, f0:%ss, inferir:%ss", + "not exist, will not use pretrained model": "Não existe, não usará o modelo pré-treinado", + "训练结束, 您可查看控制台训练日志或实验文件夹下的train.log": "Após o término do treinamento, você pode verificar o log de treinamento do console ou train.log na pasta de experimentos", + "请先进行特征提取!": "Execute a extração de recursos primeiro!", + "Trying doing kmeans %s shape to 10k centers.": "Tentando fazer a forma kmeans %s para 10k centros.", + "成功构建索引,added_IVF%s_Flat_nprobe_%s_%s_%s.index": "Index criado com sucesso, adicionado_IVF%s_Flat_nprobe_%s_%s_%s.index", + "step2a:正在提取音高": "step2a: extraindo tom", + "training index": "treinando index", + "adding index": "adicionando index", + "成功构建索引, added_IVF%s_Flat_nprobe_%s_%s_%s.index": "Index criado com sucesso, added_IVF%s_Flat_nprobe_%s_%s_%s.index", + "E:\\codes\\py39\\test-20230416b\\todo-songs": "E:\\todos-meus-audios", + "E:\\语音音频+标注\\米津玄师\\src": "E:\\meu-dataset", + "人声提取激进程度": "Agressividade da extração vocal", + "[EXPERIMENTAL] Formant shift inference audio": "[EXPERIMENTAL] Áudio para inferência de mudança de formantes", + "Used for male to female and vice-versa conversions": "Usado para conversões de homem para mulher e vice-versa", + "browse presets for formanting": "procurar predefinições para formatação", + "Quefrency for formant shifting": "Quefrency para mudança de formante", + "Timbre for formant shifting": "Timbre para mudança de formante", + "自动检测index路径,下拉式选择(dropdown)": "Detecte automaticamente o caminho do Index e selecione no menu suspenso:", + "Stop Training": "Parar de Treinar", + "Whether the model has pitch guidance.": "Se o modelo tem orientação de inclinação.", + "Whether to save only the latest .ckpt file to save hard drive space": "Se deve salvar apenas o arquivo .ckpt mais recente para economizar espaço no disco rígido", + "Cache all training sets to GPU memory. Caching small datasets (less than 10 minutes) can speed up training, but caching large datasets will consume a lot of GPU memory and may not provide much speed improvement": "Armazene em cache todos os conjuntos de treinamento na memória da GPU. O armazenamento em cache de pequenos conjuntos de dados (menos de 10 minutos) pode acelerar o treinamento, mas o armazenamento em cache de grandes conjuntos de dados consome muita memória da GPU e pode não fornecer muita melhoria de velocidade", + "Save a small final model to the 'weights' folder at each save point": "Salve um pequeno modelo final na pasta 'pesos' em cada ponto de salvamento", + "Path to your model A.": "Caminho para o seu modelo A.", + "Path to your model B.": "Caminho para o seu modelo B.", + "Path to your Model.": "Caminho para o seu modelo.", + "Model information to be changed.": "Informações do modelo a serem alteradas.", + "Name for saving.": "Nome para salvar.", + "Either leave empty or put in the Name of the Model to be saved.": "Deixe em branco ou coloque o Nome do Modelo a ser salvo.", + "Model path here.": "Caminho do modelo aqui.", + "Your filename here.": "Seu nome de arquivo aqui.", + "Model info here.": "Informações do modelo aqui.", + "RVC model path.": "Caminho do modelo RVC.", + "Onnx model output path.": "Caminho de saída do modelo Onnx.", + "Default value is 1.0": "O valor padrão é 1,0", + "Apply": "Aplicar", + "单次推理": "Único", + "rmvpe卡号配置:以-分隔输入使用的不同进程卡号,例如0-0-1使用在卡0上跑2个进程并在卡1上跑1个进程": "Configuração do número do cartão rmvpe: Use - para separar os números dos cartões de entrada de diferentes processos. Por exemplo, 0-0-1 é usado para executar 2 processos no cartão 0 e 1 processo no cartão 1.", + "选择音高提取算法,输入歌声可用pm提速,harvest低音好但巨慢无比,crepe效果好但吃GPU,rmvpe效果最好且微吃GPU": "Selecione o algoritmo de extração de tom \n'pm': extração mais rápida, mas discurso de qualidade inferior; \n'harvest': graves melhores, mas extremamente lentos; \n'harvest': melhor qualidade, mas extração mais lenta); 'crepe': melhor qualidade, mas intensivo em GPU; 'magio-crepe': melhor opção; 'RMVPE': um modelo robusto para estimativa de afinação vocal em música polifônica;", + "输入待处理音频文件路径(默认是正确格式示例)": "Caminho para o seu conjunto de dados (áudios, não zipado):", + "批量推理": "Conversão em Lote", + "重载设备列表": "Recarregar lista de dispositivos", + "harvest进程数": "Número de processos harvest", + "输入监听": "Monitoramento de entrada", + "输出变声": "Mudança de voz de saída", + "算法延迟(ms)": "Atraso do algoritmo(ms)", + "请选择pth文件": "Selecione o arquivo pth", + "请选择index文件": "Selecione o arquivo de Index", + "pth文件路径不可包含中文": "o caminho do arquivo pth não pode conter caracteres chineses", + "index文件路径不可包含中文": "O caminho do arquivo de Index não pode conter caracteres chineses", + "接受音频输入": "Aceitar entrada de áudio", + "音频处理": "Processamento de áudio", + "获取设备列表": "Obtenha lista de dispositivos", + "设置输出设备": "Configurar dispositivo de saída", + "音高算法": "Algoritmo de detecção de pitch", + "算法延迟(ms):": "Atrasos algorítmicos (ms):", + "响度因子": "Fator de volume" +}