SRT em fala: transforme legendas numa faixa de voz
Um arquivo de legendas já tem tudo o que uma narração precisa: as palavras e o momento em que cada fala deve ser ouvida. Transformá-lo em fala dá a um tutorial, um short ou um vídeo traduzido uma faixa de voz alinhada à imagem, sem gravar uma frase sequer.
O motor gratuito SuperClonica gera cada fala offline com uma voz natural, e um script curto em Python a coloca no seu tempo. Este guia mostra o script, como encaixar falas longas no seu espaço e como pôr a faixa sob o vídeo.
Do que você precisa
O motor não lê arquivos SRT sozinho: umas vinte linhas de Python resolvem.
- Um arquivo SRT: do seu editor, de legendas automáticas ou de uma tradução.
- O motor gratuito SuperClonica e Python 3.10 ou mais recente: python -m pip install superclonica-cpu. O numpy vem junto.
- Uma voz: uma das dez padrão, uma do catálogo ou a sua própria voz treinada.
- Sem placa de vídeo: um processador comum basta.
Ouça uma fala grátis
Na página de qualquer voz, cole uma fala da legenda, de 30 a 100 caracteres, escolha o idioma e clique no botão para gerar. Em poucos segundos você ouve como o vídeo vai soar, sem conta.
Das legendas a uma faixa
Crie o motor uma vez antes do laço: carregar leva alguns segundos, e cada fala, uma fração de segundo.
- Leia o arquivo: cada legenda é um número, uma linha com os tempos de início e fim, e o texto.
- Gere cada legenda: audio, sample_rate = tts.synthesize(text, voice="F2", lang="pt", seed=7).
- Crie um array numpy silencioso do tamanho do vídeo e some cada fala na amostra onde a legenda começa: o início em segundos vezes a taxa de amostragem.
- Salve o resultado com tts.save("track.wav", track).
Falas que não cabem
Imprima a duração de cada fala ao lado da duração da sua legenda. Se a fala for mais longa que o espaço, ela se sobrepõe à próxima. Primeiro encurte o texto; junte duas legendas curtas numa só; ou crie o motor um pouco mais rápido, por exemplo Superclonica(speed=1.15), dentro do intervalo permitido de 0,7 a 2,0. O mesmo texto, voz e seed sempre geram o mesmo áudio, então dá para corrigir uma fala e remontar a faixa.
Coloque a voz sob o vídeo
Importe track.wav no seu editor de vídeo como faixa de áudio, ou junte-o ao vídeo com um comando: ffmpeg -i video.mp4 -i track.wav -map 0:v -map 1:a -c:v copy -c:a aac voiced.mp4. Deixe o som original numa segunda faixa se quiser música ou efeitos sob a voz. Dê voz só a vídeos seus ou com permissão, e não use uma voz que imite uma pessoa real sem consentimento.