? Tradução de vídeo com áudio sincronizado
O Sonytranslate é um aplicativo da Web poderoso e fácil de usar que permite traduzir vídeos facilmente em diferentes idiomas. Este repositório hospeda o código da interface da web Sonytranslate, que é criada com a biblioteca Gradio para fornecer uma experiência de usuário perfeita e interativa.
Descrição | Link |
---|---|
? Caderno de Colab | |
? Repositório | |
Demonstração online |
Para uma compreensão abrangente do projeto, recomendamos assistir a este tutorial em vídeo de Dev-Moulettes. Você pode assistir no YouTube clicando na miniatura abaixo:
Código do idioma | Linguagem |
---|---|
en | Inglês |
fr | Francês |
de | Alemão |
es | Espanhol |
isto | italiano |
JA | japonês |
nl | Holandês |
Reino Unido | ucraniano |
pt | Português |
ar | árabe |
Zh | Chinês - simplificado |
zh-tw | Chinês - tradicional |
cs | Tcheco |
da | dinamarquês |
fi | finlandês |
El | grego |
ele | hebraico |
Hu | húngaro |
Ko | coreano |
fa | persa |
pl | polonês |
ru | russo |
tr | turco |
ur | urdu |
oi | hindi |
vi | vietnamita |
eu ia | indonésio |
Bn | bengali |
te | Telugu |
senhor | Marathi |
ta | tâmil |
JW (ou JV) | Javanês |
ca | catalão |
ne | Nepalês |
th | Tailandês |
Sv | sueco |
sou | Amárico |
cy | galês |
hr | croata |
é | islandês |
Ka | Georgiano |
km | Khmer |
sk | Eslovaco |
sq | albanês |
sr | sérvio |
az | Azerbaijão |
bg | búlgaro |
gl | Galian |
Gu | Gujarati |
KK | Cazaque |
KN | Kannada |
lt | lituano |
lv | letão |
ml | Malaiala |
ro | romeno |
si | Sinhala |
su | Sundanês |
et | estoniano |
Mk | Macedônio |
SW | Suaíli |
AF | afrikaans |
bs | Bósnia |
la | Latim |
meu | Mianmar birmanês |
não | norueguês |
como | Assamês |
UE | Basco |
ha | Hausa |
ht | Crioulo haitiano |
hy | Armênio |
lo | Laos |
mg | malgaxe |
mn | mongol |
mt | maltês |
PA | Punjabi |
ps | Pashto |
sl | esloveno |
sn | Shona |
então | Somali |
TG | Tajique |
tk | Turquemen |
tt | Tatar |
uz | Uzbek |
yo | Ioruba |
Código do idioma | Linguagem |
---|---|
ay | Aymara |
BM | Bambara |
CEB | Cebuano |
Nova Iorque | Chichewa |
dv | Divehi |
doi | Dogri |
ee | Ovelha |
gn | Guarani |
ILO | Iloko |
rw | Kinyarwanda |
Kri | Krio |
Ku | curdo |
KY | Kirghiz |
LG | Ganda |
Mai | Maithili |
ou | Oriya |
om | Oromo |
Qu | Quechua |
sm | Samoano |
ti | Tigrinya |
ts | Tsonga |
AK | Akan |
ug | Uigur |
Para executar sonitranslato usando o Colab Runtime:
Antes de começar a instalar e usar sonitranslato, há algumas coisas que você precisa fazer:
accept the license to use the models
: https://huggingface.co/pyannote/speaker-diarization e https://huggingface.co/pyannote/segmentationconda install -c anaconda git -y
no seu terminal (faça isso após a etapa 1 na seção a seguir.). Se você tiver problemas para instalar o Git via Anaconda, poderá usar o seguinte link:Depois de concluir essas etapas, você estará pronto para instalar o sonitranslato.
Para instalar o sonitranslato, siga estas etapas:
conda create -n sonitr python=3.10 -y
conda activate sonitr
python -m pip install pip==23.1.2
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
git clone https://github.com/r3gm/SoniTranslate.git
cd SoniTranslate
pip install -r requirements_base.txt -v
pip install -r requirements_extra.txt -v
pip install onnxruntime-gpu
Instale o FFMPEG. O FFMPEG é um projeto de software livre que produz bibliotecas e programas para lidar com dados multimídia. Você precisará para processar arquivos de áudio e vídeo. Você pode instalar o FFMPEG com o Anaconda executando conda install -y ffmpeg
no seu terminal (recomendado). Se você tiver problemas para instalar o FFMPEG via Anaconda, poderá usar o seguinte link: (https://ffmpeg.org/ffmpeg.html). Depois de instalado, verifique se está no seu caminho executando ffmpeg -h
no seu terminal. Se você não recebe uma mensagem de erro, está pronto para ir.
Instalação opcional:
Depois de instalar o FFMPEG, você pode instalar esses pacotes opcionais.
O Piper TTS é um texto neural rápido e rápido para o sistema de fala que soa ótimo e é otimizado para o Raspberry Pi 4. O Piper é usado em vários projetos. As vozes são treinadas com Vits e exportadas para o OnnxRuntime.
pip install -q piper-tts==1.2.0
O Coqui XTTS é um modelo de texto em fala (TTS) que permite gerar vozes realistas em diferentes idiomas. Ele pode clonar vozes com apenas um clipe de áudio curto, até falar em um idioma diferente! É como ter uma voz pessoal para qualquer texto que você precise falar.
pip install -q -r requirements_xtts.txt
pip install -q TTS==0.21.1 --no-deps
Para executar o sonitranslato localmente, verifique se o ambiente sonitr
Conde está ativo:
conda activate sonitr
Definindo seu token de rosto abraçado como uma variável de ambiente no Linux:
export YOUR_HF_TOKEN="YOUR_HUGGING_FACE_TOKEN"
Em seguida, navegue para a pasta SoniTranslate
e execute o app_rvc.py
python app_rvc.py
Quando o local URL
http://127.0.0.1:7860
é exibido no terminal, basta abrir este URL no navegador da web para acessar a interface sonitranslate.
Na maioria dos ambientes, você pode interromper a execução pressionando Ctrl+C no terminal em que iniciou o script app_rvc.py
. Isso interrompe o programa e interrompe o aplicativo Gradio. Para desativar o ambiente do conda, você pode usar o seguinte comando:
conda deactivate
Isso desativará o ambiente ARIGNA ATIVO ATIVADO ATIVO ATIVO ANIFICADO SONITR, e você retornará ao ambiente base ou ao ambiente global do Python.
Se você precisar começar do zero, poderá excluir a pasta SoniTranslate
e remover o ambiente sonitr
Conde com o seguinte conjunto de comandos:
conda deactivate
conda env remove -n sonitr
Com o ambiente sonitr
removido, você pode começar de novo com uma nova instalação.
conda activate sonitr
conda env config vars set YOUR_HF_TOKEN="YOUR_HUGGING_FACE_TOKEN_HERE"
conda deactivate
conda activate sonitr
conda env config vars set OPENAI_API_KEY="your-api-key-here"
conda deactivate
O script app_rvc.py suporta argumentos da linha de comando para personalizar seu comportamento. Aqui está um breve guia sobre como usá -los:
Comando de argumento | Padrão | Valor | Descrição |
---|---|---|---|
--tema | Taithrah/Minimal | Corda | Define o tema da interface. Os temas podem ser encontrados na galeria temática. |
--linguagem | inglês | Corda | Seleciona a linguagem da interface. Opções disponíveis: africâner, árabe, Azerbaijão, chinês_zh_cn, inglês, francês, alemão, hindi, indonésio, italiano, japonês, coreano, marathi, persa, polonês, português, russo, espanhol, sueco, turco, ucraniano, vietnamita. |
--verbosity_level | informações | Corda | Define o nível de verbosidade do Logger: Debug, Informações, Aviso, Erro ou Crítico. |
-Public_url | Booleano | Ativa um link público. | |
--cpu_mode | Booleano | Ative o modo CPU para executar o programa sem utilizar a aceleração da GPU. | |
--logs_in_gui | Booleano | Mostra as operações realizadas em logs (obsoleto). |
Exemplo de uso:
python app_rvc.py --theme aliabid94/new-theme --language french
Este comando define o tema como um tema personalizado e seleciona o francês como a linguagem da interface. Sinta -se à vontade para personalizar esses argumentos de acordo com suas preferências e requisitos.
2024/18/05: novos detalhes de atualização
kotoba-tech/kotoba-whisper-v1.1
para a transcrição japonesa disponível aquiapp_rvc.py --cpu_mode
2024/03/02: Preserve os nomes dos arquivos na saída. Agora, vários arquivos podem ser enviados simultaneamente especificando seus caminhos, diretórios ou URLs separados por vírgulas. Processamento de uma lista de reprodução completa do YouTube. Sobre os sites suportados URL, esteja ciente de que nem todos os sites podem funcionar de maneira ideal. Opção adicionada para desativar a diarização. Legendas suaves implementadas. Saída de formato (MP3, MP4, MKV, WAV e OGG) e problemas resolvidos relacionados à leitura e diarização de arquivos.
2024/02/22: Adicionado Freevc para imitação de voz, faixa fixa sem voz, segmentos de dividir. Novas idiomas apoiam (sueco, amárico, galês, croata, islandês, georgiano, khmer, eslovaco, albaneses, sérvios, azerbaijanos, búlgaros, galegos, gujarati, cazaque, kannada, lituano, latino, malaa. Novas traduções da GUI (espanhol, francês, alemão, italiano, japonês, chinês simplificado, ucraniano, árabe, russo, turco, indonésio, português, hindi, vietnamita, polonês, sueco, coreano, marathi e Azerbaijani). Com o arquivo de legenda, não é necessário alinhar e o arquivo de mídia não é necessário para processar o arquivo SRT. Queimar legendas em vídeo. A fila pode aceitar várias tarefas simultaneamente. Notificação de alerta de som. Continue o processo do último ponto de verificação. Regulação da taxa de aceleração.
2024/01/16: Suporte de linguagem expandida (tailandês, nepalês, catalão, javanês, tamil, marathi, telugu, bengali e indonésio), a introdução de sussurros grandes V3, opções configuráveis de GUI, integração de latidos, facebook-mms, coqui xtts , e Piper-tts. Recursos adicionais incluíram utilitários de separação de áudio, criação XTTS WAV, use um arquivo SRT como base para tradução, tradução de documentos, edição manual do alto -falante e opções de saída flexíveis (vídeo, áudio, legendas).
2023/10/29: Edite a legenda traduzida, faça o download, ajuste as opções de volume e velocidade.
2023/08/03: alterou as opções padrão e a visualização de downloads de downloads adicionados.
2023/08/02: Adicionado apoio a árabe, tcheco, dinamarquês, finlandês, grego, hebraico, húngaro, coreano, persa, polonês, russo, turco, urdu, hindi e vietnamita.
2023/08/01: Adicione opções para usar modelos RVC.
2023/07/27: Corrija alguns bugs processando o vídeo e o áudio.
2023/07/26: nova interface do usuário e adicione opções de mistura.
Bem -vindo às contribuições da comunidade! Se você tiver alguma idéia, relatórios de bugs ou solicitações de recursos, abra um problema ou envie uma solicitação de tração. Para mais informações, consulte as diretrizes de contribuição.
Este projeto aproveita vários projetos de código aberto. Gostaríamos de reconhecer e agradecer aos colaboradores dos seguintes repositórios:
Embora o código seja licenciado no Apache 2, os modelos ou pesos podem ter restrições comerciais, como visto com a diarização de pyannote.