Você não precisa de API paga pra narrar vídeo em português. O Piper roda local. Testei os comandos abaixo no Linux, Python 3.12, sem GPU.
1. Instalar
pip install piper-tts
python3 -m piper.download_voices pt_BR-faber-medium
Isso baixa pt_BR-faber-medium.onnx e o .json de configuração pra pasta atual.
2. Gerar um áudio
echo "Olá, essa é uma narração gerada offline." > t.txt
python3 -m piper -m pt_BR-faber-medium.onnx -i t.txt -f t.wav
Uma frase curta levou cerca de 3 segundos aqui, CPU comum. O --length-scale 1.1 deixa a fala um pouco mais lenta.
3. Narrar uma pasta de roteiros
Um .txt por cena dentro de roteiro/:
import subprocess, pathlib
MODELO = "pt_BR-faber-medium.onnx"
for i, arq in enumerate(sorted(pathlib.Path("roteiro").glob("*.txt")), 1):
saida = f"narracao_{i:02d}.wav"
subprocess.run(["python3", "-m", "piper", "-m", MODELO,
"-i", str(arq), "-f", saida], check=True)
print(arq.name, "->", saida)
Saída que obtive com dois roteiros de teste:
a.txt -> narracao_01.wav
b.txt -> narracao_02.wav
4. Juntar com o vídeo (ffmpeg)
ffmpeg -i video.mp4 -i narracao_01.wav -map 0:v -map 1:a -c:v copy -c:a aac -shortest final.mp4
Limites honestos
A voz é clara, mas menos expressiva que serviços pagos. Pra tutorial e conteúdo informativo funciona bem. Pra anúncio emocional, teste um serviço pago, como o ElevenLabs (https://go.nowto.link/elevenlabs). Pela página de preços, o plano grátis deles não tem licença comercial; o Starter, que tem, custa US$ 6 por mês.
Newsletter completa: https://nuvemdev.substack.com
Divulgação: o link do ElevenLabs é de afiliado; posso ganhar comissão sem custo extra pra você.
Top comments (0)