Como Embutir Legendas em um Vídeo (Sem Enviar para Lugar Nenhum)
Embuta legendas em um vídeo em seu próprio computador: os quatro métodos comparados, os comandos FFmpeg e como evitar a perda de qualidade da recodificação.
Embutir legendas em um vídeo significa desenhar o texto na imagem e recodificar, para que as legendas viajem com o arquivo como pixels. Você precisa disso para o TikTok, o Reels e o Shorts, que não aceitam arquivos de legenda de forma alguma, e sempre que as legendas fazem parte do design em vez de serem um recurso de acessibilidade.
Você não precisa enviar nada para fazer isso. O FFmpeg faz com um único comando, o HandBrake e o Subtitle Edit fazem a partir de uma janela, e um programa de legendagem para computador como o Sablate também cria as legendas antes. Todos rodam em seu próprio computador, sem limite de tamanho de arquivo e sem esperar por um upload.
Este artigo mostra quando uma ferramenta online ainda é a escolha certa, as quatro formas de embutir legendas, como fazer isso sem a linha de comando, o que muda com gravações longas e as duas coisas que realmente prejudicam a qualidade.
Ferramenta online ou offline: qual usar?
A maioria das buscas sobre isso leva primeiro a um editor no navegador, e para um clipe curto tudo bem. A diferença aparece na duração, no tamanho do arquivo e na privacidade.
| Editor online | Offline (FFmpeg, HandBrake, programa para computador) | |
|---|---|---|
| Seu vídeo é enviado | Sim, o arquivo completo | Não |
| Tamanho do arquivo | Limitado pelo plano | Limitado só por seu disco |
| Gravações longas | O tempo de upload cresce com a duração | Só a codificação demora |
| Material confidencial | Sai de sua máquina | Fica nela |
| Instalação necessária | Não | Sim |
| Também cria as legendas | Normalmente | Programas para computador sim, FFmpeg e HandBrake não |
Os limites são reais, e nos planos gratuitos são baixos. A política de armazenamento do Kapwing, por exemplo, permite 250 MB por arquivo no plano gratuito e 6 GB nos pagos. Com um bitrate típico de 1080p, de cerca de 8 Mbps, 250 MB dão para pouco mais de quatro minutos de vídeo.
Por isso, use um editor online quando o clipe for curto, nada nele for confidencial e você não puder instalar software na máquina que tem à frente. Para qualquer coisa com mais de alguns minutos, para material de clientes ou interno, e para um lote de arquivos, embuta localmente. A comparação de geradores de legenda offline cobre os programas para computador que também criam as legendas.
Quando embutir é a escolha certa
| Embutida (hardsub) | Arquivo ou faixa de legenda (softsub) | |
|---|---|---|
| O espectador pode desativar | Não | Sim |
| Funciona no TikTok, Reels, Shorts | Sim | Não, sem suporte |
| Funciona no YouTube, Vimeo | Sim | Sim, e pesquisável |
| Conta para conformidade de acessibilidade | Normalmente não | Sim |
| Indexada pelos mecanismos de busca | Não | Sim |
| Corrigir um erro de digitação depois | Renderizar o vídeo de novo | Editar um arquivo de texto |
| Vários idiomas em um só arquivo | Não, uma renderização por idioma | Sim, uma faixa por idioma |
| Estilo preservado com exatidão | Sim | Só em faixas ASS |
A resposta prática para a maioria das pessoas é fazer as duas coisas: embutir para as redes sociais verticais, onde nada mais funciona, e entregar um arquivo de legenda em todo o resto que o aceite, porque um arquivo é pesquisável, trocável e corrigível. Se quiser as duas coisas a partir da mesma tarefa, a entrega em vários idiomas explica como as duas saídas nascem da mesma linha do tempo.
As quatro formas de embutir legendas
| FFmpeg | HandBrake | Ferramentas no navegador | Programas de legendagem para computador | |
|---|---|---|---|---|
| Preço | Gratuito | Gratuito | Plano gratuito, depois assinatura | Pagamento único ou assinatura |
| Envia seu vídeo | Não | Não | Sim, o arquivo completo | Não |
| Limite de tamanho / duração | Nenhum | Nenhum | Sim, normalmente rígido | Nenhum |
| Cria as legendas | Não | Não | Sim | Sim |
| Controle de estilo | Via ASS ou force_style | Limitado | Modelos prontos | Total, com pré-visualização em tempo real |
| Curva de aprendizado | Linha de comando | Moderada | Nenhuma | Baixa |
Duas observações honestas. O FFmpeg e o HandBrake são gratuitos e excelentes nisso, e se você já tem um arquivo de legenda pronto, o FFmpeg é um único comando — não há motivo para comprar nada. O que nenhum dos dois faz é produzir as legendas: eles embutem um arquivo que você já tem, com os tempos ajustados e o texto corrigido em outro lugar. As ferramentas no navegador produzem as legendas, mas o upload não é opcional, o que as descarta para material confidencial e para qualquer coisa mais longa que o limite delas.
Embutir com o FFmpeg
Para um SRT simples:
ffmpeg -i input.mp4 -vf "subtitles=subs.srt" -c:a copy output.mp4
Para um arquivo ASS com estilo, use o filtro ass para que o estilo seja respeitado em vez de achatado:
ffmpeg -i input.mp4 -vf "ass=subs.ass" -c:a copy output.mp4
Para controlar a qualidade explicitamente, em vez de aceitar o padrão:
ffmpeg -i input.mp4 -vf "subtitles=subs.srt" \
-c:v libx264 -crf 18 -preset slow -c:a copy output.mp4
Para mudar o estilo de um SRT sem convertê-lo antes:
ffmpeg -i input.mp4 \
-vf "subtitles=subs.srt:force_style='FontName=Arial,FontSize=24,Outline=2'" \
-c:a copy output.mp4
A armadilha do Windows. O caminho dentro do filtro é interpretado pelo filtro, não pelo shell, então os dois-pontos da letra da unidade e as barras invertidas precisam ser escapados. É de longe o motivo mais comum para o comando falhar com um erro de arquivo não encontrado, mesmo com um arquivo que claramente existe:
ffmpeg -i input.mp4 -vf "subtitles='C\:/Videos/subs.srt'" -c:a copy output.mp4
Mantenha o arquivo de legenda na pasta de trabalho e passe só o nome do arquivo sempre que puder — isso evita o problema por completo.
Embutir legendas sem a linha de comando
Se o terminal não é para você, há três tipos de ferramenta que fazem o mesmo trabalho a partir de uma janela. As duas primeiras são gratuitas e embutem um arquivo de legenda que você já tem; a terceira também cria o arquivo.
HandBrake
O HandBrake é um conversor de vídeo gratuito para Windows, Mac e Linux. Abra o vídeo, vá até a aba Subtitles, use Tracks para adicionar seu SRT externo, configure essa faixa para ser embutida no vídeo e inicie a codificação. Há dois limites que vale conhecer: a documentação do HandBrake indica que um MP4 só pode ter uma faixa embutida, e o estilo fica limitado ao que um SRT simples carrega.
Subtitle Edit
O Subtitle Edit, o editor de legendas gratuito, tem no menu Video uma exportação com as legendas embutidas que roda o FFmpeg por você, e oferece baixar o FFmpeg se ele não estiver instalado. É a escolha natural quando você já está corrigindo os tempos ali.
Um programa de legendagem para computador
Se você ainda não tem um arquivo de legenda corrigido, embutir é o último passo de uma tarefa mais longa: transcrever, corrigir, estilizar, renderizar. O Sablate faz isso de ponta a ponta em sua própria máquina — transcrição local com Whisper, um editor com ajuste dos tempos na linha do tempo e avisos de velocidade de leitura, 13 estilos predefinidos de legenda, e uma renderização embutida que bate exatamente com a pré-visualização. Se você edita no DaVinci Resolve, a versão gratuita pode, como alternativa, importar um SRT e embuti-lo na exportação.
A renderização embutida está disponível no plano Gratuito, com uma pequena marca no canto, para vídeos de até 10 minutos. O Pro remove a marca e o limite de duração e adiciona exportação .ass, .mkv com várias faixas e exportação em lote, por um único pagamento de $29. Baixe o Sablate ou veja a página de preços para os detalhes completos.
Embutir legendas em vídeos longos ou grandes
A duração muda duas coisas: levar o arquivo até a ferramenta e a codificação em si.
O upload. Uma gravação de duas horas em 1080p a cerca de 8 Mbps ocupa cerca de 7 GB. Em uma conexão com 20 Mbps de upload, são quase 50 minutos antes de uma ferramenta online sequer começar, e o arquivo final ainda precisa ser baixado de volta. Embutir localmente dispensa esse passo por completo.
A codificação. Embutir recodifica cada quadro, então um arquivo de duas horas leva um bom tempo em qualquer máquina. Antes de partir para a codificação completa, renderize o primeiro minuto e confira ali a fonte, o tamanho e a posição, em vez de descobrir depois de uma hora de espera:
ffmpeg -i input.mp4 -t 60 -vf "subtitles=subs.srt" -c:v libx264 -crf 18 -preset slow -c:a copy test.mp4
Velocidade versus tamanho. O -preset medium é visivelmente mais rápido que o slow e gera um arquivo ligeiramente maior com o mesmo CRF. Um codificador por hardware (h264_nvenc em placas NVIDIA, h264_videotoolbox em um Mac) é ainda mais rápido, mas exige um bitrate mais alto para a mesma qualidade visual. Mantenha o -c:a copy em qualquer um dos casos: recodificar o áudio de um arquivo longo custa tempo e uma segunda geração de perdas, sem nenhum benefício.
O Sablate não tem limite de duração no Pro, e a renderização roda localmente com barra de progresso e botão de cancelar, então uma gravação do tamanho de um longa-metragem é só questão de esperar, e não de dividir o arquivo em pedaços.
O que realmente custa qualidade
Duas coisas, e nenhuma delas é o ato de embutir em si.
Recodificar um arquivo já comprimido. Embutir exige uma recodificação, que tem perdas. Fazer isso em seu master custa quase nada de visível. Fazer isso em um arquivo que uma plataforma já comprimiu significa comprimir artefatos de compressão, e é aí que aparecem os blocos e a imagem borrada. Comece sempre pela versão de maior qualidade que tiver, e nunca embuta legendas em um arquivo que já foi embutido uma vez.
Aceitar as configurações padrão do codificador. -crf 18 com x264 é visualmente quase transparente para a maioria dos conteúdos; o padrão 23 fica visivelmente mais suave em imagens com muito detalhe. O -preset slow compra um arquivo menor com a mesma qualidade, em troca de tempo. E o -c:a copy deixa a faixa de áudio intocada — não há motivo para recodificar o áudio quando você só está mudando a imagem.
Por que a renderização não bate com a pré-visualização
Duas causas, ambas corrigíveis antes de você gastar uma codificação.
Fontes. O motor de renderização desenha com a fonte que conseguir encontrar. Se a fonte escolhida não estiver instalada, ou não conseguir desenhar aquele sistema de escrita (a maioria das fontes de legendagem cobre apenas os sistemas latino, cirílico e grego), entra uma substituta, e o texto em árabe, tailandês, hangul ou CJK pode sair como quadradinhos vazios. Confira a fonte antes de renderizar doze idiomas, não depois.
Tamanho da tela virtual. As posições e os tamanhos de fonte em ASS são relativos a uma tela virtual declarada no arquivo, não às dimensões em pixels do vídeo. O mesmo tamanho de fonte produz texto de tamanho diferente na tela em uma origem 1080p e em uma 4K, a menos que a tela esteja fixa. O Sablate fixa a tela das legendas em um quadro virtual de 1080 de altura e deriva a largura da proporção real da origem, incluindo os metadados de rotação, então um tamanho de fonte sempre significa o mesmo, seja qual for a resolução em que você filmou — e a pré-visualização do editor escala exatamente contra a mesma tela que o motor de renderização usa.
É também por isso que a qualidade das legendas embutidas varia tanto entre as ferramentas. Muitos editores online compõem as legendas como uma sobreposição de texto plana; a renderização embutida do Sablate é feita pelo libass, o mesmo motor que os players de mídia usam para legendas ASS, então os contornos, as sombras, o tempo de karaokê palavra por palavra e as fontes corretas para cada sistema de escrita saem como tipografia de legenda de verdade, e não como gráficos aproximados.
Saída vertical e quadrada
Se o vídeo se destina ao Reels, ao Shorts ou ao TikTok, converta a proporção da imagem durante a renderização, em vez de cortar depois. Cortar uma legenda embutida já pronta de 16:9 para 9:16 corta as laterais das legendas junto com a imagem.
O Sablate renderiza em 16:9 (1920×1080), 9:16 (1080×1920) ou 1:1 (1080×1080), cortando para o quadro de destino ou preenchendo-o com uma cópia desfocada da origem, e posiciona as legendas já pensando no quadro final. Mantenha as legendas acima do terço inferior de um quadro vertical: a orientação da Meta para o Reels mantém livres os 35 por cento inferiores, porque os textos e botões da própria plataforma os cobrem. Onde colocar legendas no Reels, no TikTok e no Shorts mostra a área segura de cada plataforma.
Resumindo
Use um editor online só para clipes curtos sem nada confidencial; para todo o resto, embuta localmente, porque não há upload, nem limite de tamanho, nem limite de duração. Embuta quando a plataforma não lê nenhum arquivo de legenda, ou quando as legendas fazem parte da estética — e entregue um arquivo de legenda em todo o resto, porque texto que dá para editar vence pixels que não dá. Renderize a partir de seu master, não de uma cópia feita para upload. Use CRF 18 e copie o áudio. Teste o primeiro minuto de um arquivo longo antes da codificação completa. E confira a fonte e a tela antes de gastar essa codificação, porque são essas as duas coisas que fazem um arquivo de legendas perfeito sair errado.
Perguntas frequentes
O que embutir legendas em um vídeo faz, na prática?
Desenha o texto diretamente na imagem e recodifica o vídeo, então as legendas passam a ser pixels, e não uma faixa separada. Ninguém consegue desativá-las, nenhum player precisa ser compatível com um formato de legenda, e as plataformas que ignoram arquivos de legenda as exibem corretamente. Em contrapartida, a legenda embutida é permanente e custa uma recodificação.
Embutir legendas reduz a qualidade do vídeo?
Recodifica o vídeo, então alguma perda é inevitável, mas ela pode ficar invisível. Codifique a partir de seu master de maior qualidade, e não de uma exportação já comprimida, use uma configuração orientada à qualidade, como CRF 18 com x264, e copie a faixa de áudio em vez de recodificá-la. Embutir legendas no mesmo arquivo duas vezes é o que o degrada de forma visível.
Posso embutir legendas sem enviar meu vídeo?
Sim. O FFmpeg, o HandBrake e os programas de legendagem para computador rodam inteiramente em sua própria máquina, sem upload e sem limite de tamanho de arquivo. As ferramentas no navegador precisam primeiro enviar o vídeo completo para um servidor, e é por isso que limitam o tamanho e a duração do arquivo, e por isso uma gravação de duas horas normalmente falha nelas.
Qual é o comando FFmpeg para embutir legendas em um vídeo?
Para um SRT simples: ffmpeg -i input.mp4 -vf subtitles=subs.srt -c:a copy output.mp4. Para um arquivo ASS com estilo, use o filtro ass em vez de subtitles. No Windows, o caminho dentro do filtro precisa ser escapado, que é o motivo mais comum para o comando falhar com um erro de arquivo não encontrado.
Por que minhas legendas embutidas ficam diferentes da pré-visualização?
Normalmente, por causa das fontes ou do tamanho da tela virtual. O motor de renderização substitui a fonte que você escolheu se ela estiver faltando ou não conseguir desenhar aquele sistema de escrita, e os tamanhos de fonte são relativos a uma tela virtual — o mesmo número dá tamanhos de texto diferentes em uma origem 1080p e em uma 4K. Pré-visualização e renderização precisam compartilhar a mesma fonte e a mesma tela.
Preciso embutir legendas para TikTok, Reels e Shorts?
Sim. Nenhuma dessas plataformas aceita um arquivo de legenda junto com o upload, então as legendas ali são embutidas no vídeo ou geradas pela própria plataforma. As legendas geradas pela plataforma são gratuitas, mas seguem o estilo dela e erram com frequência em nomes e termos técnicos, e é por isso que a maioria dos criadores embute as próprias.
Como embuto legendas em um vídeo longo?
Faça isso localmente. Uma gravação de duas horas em 1080p ocupa vários gigabytes, mais do que a maioria das ferramentas no navegador aceita, e leva cerca de uma hora para ser enviada em uma conexão comum. O FFmpeg, o HandBrake ou um programa para computador recodificam o vídeo em sua própria máquina. Renderize o primeiro minuto como teste antes da codificação completa e copie o áudio em vez de recodificá-lo.