Dublagem de Vídeo Chinês para Inglês
Converte vídeos chineses com narração para dublagem em inglês: clona a voz do locutor original, reescreve o texto para o público estrangeiro e gera um MP4 final.
Um Comando
cd "<raiz_do_projeto>"
$env:MINIMAX_API_KEY = "<Chave MiniMax China>"
$env:VOLC_API_KEY = "<Chave API Volcengine>"
.\\.venv\Scripts\python.exe scripts\dub.py --src "<caminho_do_video>" --slug "<nome_curto>"
Produtos:
| Localização | Conteúdo |
|---|---|
out/<nome_curto>_EN_dubbed.mp4 | Vídeo final (único entregável) |
out/<nome_curto>_EN.srt / _ZH.srt | Legendas inglês/chinesas |
work/batch/<nome_curto>/REPORT.md | Tempo, rodadas de síntese, custo |
Parâmetros comuns: --until translate (apenas texto, sem síntese), --from fit (começar a partir de um estágio), --force (ignorar estado salvo).
Seis Estágios
1 prep Extrair áudio + separação de voz Demucs + gravar duração do vídeo
2 asr Reconhecimento Volcengine palavra por palavra → timeline de frases em chinês
3 translate DeepSeek → texto em inglês (mudança de público + orçamento de palavras + números por extenso)
4 fit Rodar N rodadas de síntese → testar cada uma → escolher a que preenche mais o tempo
5 place Posicionar na timeline + inserir pausas entre frases + escrever legendas (timestamps reais por palavra)
6 mux Adicionar música de fundo + normalizar loudness → MP4
Após falha, basta executar o mesmo comando novamente – os estágios concluídos são pulados automaticamente (com verificação de que o produto é mais novo que a entrada).
Pré-requisitos
| Item | Descrição |
|---|---|
| Voz | work/voice.json, gere uma vez com clone_voice.py – compartilhado por todos os vídeos, sem necessidade de clonagem repetida |
| Chave Volcengine | Reconhecimento de arquivo de áudio (volc.seedasr.auc) |
| Chave MiniMax | Site China api.minimaxi.com, precisa de cadastro real e saldo (senão 2038 / 1008) |
| Chave DeepSeek | Oficial api.deepseek.com |
| Dependências | demucs torch numpy requests openai soundfile |
| Música | Um diretório com arquivos .wav, veja BGM_DIR em config.py |
Todos os serviços conectam diretamente – dub.py força a limpeza de variáveis de proxy.
Leitura Obrigatória: 18 Lições Práticas
A lista completa está em docs/LESSONS.md. As mais críticas e com maior custo:
- Mudança de público, não apenas tradução – Muitos materiais originais falam para exportadores chineses ("Amigos que fazem comércio exterior"). O inglês deve falar diretamente para compradores estrangeiros. A regra está em
SYSTEM_FILLnotranslate.py. - Números devem ser escritos por extenso já na tradução –
20,000conta como 1 palavra mas é lido como 2, desbalanceando todos os cálculos de duração; manter algarismos arábicos pode fazer o TTS ler dígito por dígito. - atempo desabilitado – Não acelere a fala para preencher o tempo; encurte o texto.
- Fades são obrigatórios nas emendas entre frases – Cortes em formas de onda não-zero produzem estalos.
- Verificação de artefatos de áudio não deve usar apenas o maior salto do arquivo inteiro – Pode ser mascarado por saltos maiores da fonte original; analise a distribuição dos saltos.
- Retomada deve verificar se o produto é mais novo que a entrada – Caso contrário, entrega silenciosamente dublagem desatualizada.
Detalhes de mecanismos e processo de desenvolvimento estão em docs/USAGE.md (originalmente "Manual de Uso") e docs/REPORT.md (Relatório de Implementação).
Limitações Conhecidas
- A densidade de informação em chinês é maior que em inglês; em raros materiais, é necessário remover frases mantendo os pontos de venda (a ferramenta faz isso automaticamente e registra no relatório).
- A taxa de preenchimento geralmente fica entre 93–100%, o restante é completado pela música de fundo.
- Nomes próprios que a
Evanão pronuncia corretamente devem ser adicionados ao dicionárioTTS_RESPELLemsynth_single.py(afeta apenas a entrada do TTS, as legendas permanecem inalteradas).
Fluxo de Trabalho Sugerido
Para novos materiais, execute o processo completo uma vez para o cliente confirmar (voz/velocidade/música/pausas). Após a aprovação, processe em lote. Cada item no lote indicará seu custo.