Exportações e arquivos de legenda
Como gravo legendas ASS estilizadas num vídeo com o FFmpeg?
Resposta curta
Use o filtro de vídeo ass ou subtitles do FFmpeg, que desenha as legendas em cada quadro com a libass: ffmpeg -i input.mp4 -vf ass=captions.ass -c:a copy output.mp4. O arquivo ASS mantém fontes, cores, posição e animação, mas as fontes precisam estar instaladas ou ser indicadas com a opção fontsdir. Gravar as legendas recodifica o vídeo, então guarde uma cópia do original.
3 min de leitura
Qual comando grava um arquivo ASS num vídeo?
ffmpeg -i input.mp4 -vf "ass=captions.ass" -c:a copy output.mp4
-vf "ass=captions.ass"desenha as legendas no vídeo com a libass.-c:a copymantém o áudio como está. O vídeo sempre é recodificado, porque as legendas passam a fazer parte da imagem.
Se as fontes usadas no arquivo ASS estiverem numa pasta, indique a pasta para o FFmpeg:
ffmpeg -i input.mp4 -vf "ass=captions.ass:fontsdir=./fonts" -c:a copy output.mp4
Os dois filtros precisam de uma versão do FFmpeg com libass, configurada com --enable-libass; a maioria das versões empacotadas já inclui (documentação de filtros do FFmpeg).
Qual a diferença entre os filtros ass e subtitles?
- ass renderiza um arquivo ASS exatamente com o estilo que ele tem.
- subtitles aceita também outros formatos, como SRT, convertendo-os primeiro para ASS. Com SRT dá para definir um estilo com
force_style, por exemplosubtitles=captions.srt:force_style='FontName=Montserrat,FontSize=24'(documentação de filtros do FFmpeg).
Use ass para um arquivo ASS estilizado; use subtitles com force_style quando você só tiver SRT.
Por que minhas fontes ou estilos aparecem errados?
- Faltam fontes. Um arquivo ASS cita as fontes, mas não as contém. Se uma fonte não estiver instalada nem em
fontsdir, a libass usa outra. Instale as fontes ou indique a pasta. - Tamanho de vídeo diferente. As posições e tamanhos do ASS são definidos para uma tela específica. Grave o arquivo no vídeo para o qual ele foi feito.
- Efeitos não suportados. Alguns players suportam só parte do formato ASS; a libass, que o FFmpeg usa, suporta a maior parte.
- Tempo errado. Se você cortou o vídeo depois de criar o arquivo ASS, as legendas saem do lugar; gere um arquivo novo a partir do corte final.
Como fazer com o CaptionBolt
O CaptionBolt exporta arquivos ASS estilizados para fluxos de trabalho com o FFmpeg, criados com o mesmo compilador que ele usa nas próprias legendas gravadas no vídeo, ou um MP4 pronto se você não precisar do FFmpeg.
- Envie o vídeo, escolha um estilo e revise o texto no Editor de texto.
- Baixe o arquivo ASS. O ASS está incluído no Pro e no Max.
- Instale as fontes que o estilo usa. Os estilos integrados usam fontes como Montserrat, Anton ou Poppins, que são gratuitas no Google Fonts. Se você usa a sua própria fonte enviada, instale também esse arquivo de fonte.
- Rode o comando do FFmpeg acima no mesmo vídeo que você enviou.
Se você só precisa do vídeo com legendas, exporte o MP4 direto do CaptionBolt; ele já vem com as legendas gravadas. Veja quais arquivos de legenda o CaptionBolt exporta.
Quando outro caminho é melhor
- Você edita no Premiere Pro, no DaVinci Resolve ou no Final Cut Pro. Eles não importam ASS; use SRT ou o MP4 com legendas. Veja como levar as legendas para os editores.
- Você quer que o público consiga desativar as legendas. Mantenha as legendas como uma faixa separada em vez de gravá-las no vídeo.
Perguntas relacionadas
Como coloco um arquivo SRT no meu vídeo?
Decida se o público deve poder desligar as legendas. Para mantê-las opcionais, envie o SRT junto com o vídeo no YouTube, no LinkedIn ou no Facebook, ou adicione como faixa de legenda num player ou no arquivo de vídeo. Para torná-las permanentes, grave o SRT na imagem com o HandBrake, o FFmpeg ou um editor de vídeo. TikTok e Instagram não aceitam arquivos de legenda, então para eles grave as legendas no vídeo.
Como converto um arquivo SRT em VTT, ou VTT em SRT?
Mudam três coisas: arquivos VTT começam com uma linha WEBVTT, usam ponto antes dos milissegundos em vez de vírgula e podem ter configurações de cue e notas que o SRT não aceita. Um conversor faz isso em segundos sem mexer no texto nem nos tempos. Trocar a extensão não basta. Use VTT para players web e vídeo HTML5; use SRT para LinkedIn, Facebook e a maioria dos editores de vídeo.
Como crio um arquivo de legenda SRT a partir do meu vídeo?
Deixe o reconhecimento de fala fazer um primeiro rascunho, depois corrija e exporte em SRT. Se o vídeo está no seu canal do YouTube, o YouTube Studio baixa as legendas dele como arquivo de graça. Senão, use uma ferramenta de legenda ou transcrição que exporte SRT, como o CaptionBolt no plano Pro, ou digite as legendas você mesmo num editor de legendas. Sempre confira nomes, números e tempos antes de usar o arquivo.
Como edito um arquivo SRT sem quebrá-lo?
Edite o texto e mantenha a estrutura: cada legenda é um número, uma linha de tempo como 00:00:01,000 --> 00:00:03,500 e uma ou duas linhas de texto, com uma linha em branco entre as legendas. Não mude a seta nem as vírgulas, mantenha cada tempo inicial antes do final e salve em UTF-8 simples. Um editor de legendas confere tudo isso para você, e o arquivo continua sendo importado pelo YouTube, pelo LinkedIn ou pelo seu editor de vídeo.