Legendas suaves vs legendas fixas: incorporadas ou gravadas na imagem?
Há exatamente duas maneiras de as legendas viverem num vídeo, e toda a decisão de fluxo de trabalho depende de qual delas tem. As legendas suaves são uma faixa de texto guardada junto ao fluxo de vídeo — os fotogramas ficam intactos, e o leitor renderiza o texto no momento da reprodução. As legendas fixas são pintadas nos pixels durante a codificação: as letras fazem parte da imagem, para sempre. As legendas suaves podem ser desligadas, trocadas entre idiomas, re-estilizadas e extraídas como texto; as fixas reproduzem-se de forma idêntica em literalmente qualquer coisa que reproduza o vídeo, ao custo de serem permanentes. Uma é dados ao lado da imagem; a outra é a própria imagem.
Cinco factos para ancorar o resto desta página:
• suave = faixa de texto integrada no contentor (SRT/VTT/ASS); fixa = legendas gravadas nos fotogramas
• a incorporação suave é uma remuxagem — segundos, zero perda de qualidade; a gravação fixa é uma recodificação — cada fotograma é renderizado e comprimido de novo
• as legendas suaves pesam quilobytes; as legendas fixas não custam nada extra em tamanho, mas não podem ser removidas
• a extração funciona em legendas suaves (são texto); o texto gravado são pixels — isso exige OCR, e a qualidade nunca está garantida
• os carimbos temporais SRT são HH:MM:SS,mmm — por exemplo 00:01:22,480 → 00:01:25,120 é uma linha de 2640 ms
Incorporação suave: acrescentar uma faixa de texto
A incorporação suave escreve o seu ficheiro de legendas no contentor como faixa adicional, ao lado das faixas de vídeo e áudio — o próprio fluxo de vídeo é copiado byte a byte. É por isso que termina em segundos e não perde nada: é a mesma operação de "remuxagem" que mudar de contentor (veja a página MP4 para as bases de contentores). O senão é o suporte: o contentor tem de aceitar faixas de legendas (MKV e MP4 aceitam; alguns dispositivos ignoram-nas de qualquer forma), e o leitor tem de as renderizar — as smart TVs e os leitores de telemóvel de série são notoriamente inconsistentes, e é exatamente por isso que as gravações fixas ainda existem.
Gravação fixa: pintar texto nos fotogramas
Gravar legendas renderiza de novo cada fotograma do vídeo com o texto composto por cima, e depois recomprime o resultado — uma recodificação completa com tudo o que isso implica: demora tanto como a codificação, e cada fotograma passa por uma segunda geração de compressão. Os tipos de letra ficam incorporados (sem surpresas de "tipo de letra em falta" na máquina do espetador), o posicionamento e o estilo são exatos, e a compatibilidade de reprodução é total porque a saída é apenas um vídeo comum. O compromisso é a finalidade: o texto é inseparável da imagem, e corrigir um erro de escrita significa recodificar outra vez a partir da fonte original.
SRT, VTT e ASS: três formatos de legendas
SRT (SubRip) é o mínimo universal: linhas numeradas, carimbos temporais de início → fim, texto simples. Todos os leitores do mundo o leem. VTT (WebVTT) é o seu irmão nativo da web — a mesma ideia, milissegundos com . em vez de ,, mais ganchos de estilo e posicionamento que o elemento HTML5 <track> usa. ASS (Advanced SubStation Alpha) é o formato dos entusiastas: tipos de letra, cores, contornos, rotação, animação por carácter — o formato por trás das legendas estilizadas de anime — e é precisamente por isso que o MKV consegue anexar os tipos de letra que uma faixa precisa dentro do ficheiro (veja a página MKV). Gravar estilos ASS exige que os tipos de letra estejam disponíveis no momento da codificação; reproduzi-los de forma suave exige-os no momento da reprodução.
Extração: porque só funciona de verdade com legendas suaves
Extrair uma faixa de legendas suave é tirar texto do contentor — perfeito, porque é isso que lá foi guardado. Recuperar legendas de um vídeo com gravação fixa é um problema de visão computacional (OCR em cada fotograma, adivinhar onde está a região do texto, limpar o fundo por trás das letras); funciona razoavelmente bem com texto limpo e estático, e degrada-se depressa com tipos de letra estilizados, movimento e grão. Se precisar do texto mais tarde, guarde (ou peça) a versão suave.
Ideias erradas comuns
- "As legendas que vieram com o ficheiro podem ser sempre desligadas." Só as suaves. Se nunca se desligam, estão gravadas nos pixels e nenhum leitor as consegue remover.
- "Incorporar legendas recodifica o vídeo." A incorporação suave remuxa — instantânea e sem perdas. Só a gravação fixa recodifica.
- "Os ficheiros de legendas tornam os vídeos muito maiores." Uma faixa suave é texto: um ficheiro de legendas de um filme completo tem dezenas a algumas centenas de quilobytes, perdido no erro de arredondamento dos megabytes de um vídeo.
- "Gravar é simplesmente mais seguro, por isso grave sempre." É mais seguro para a compatibilidade de reprodução e permanentemente pior para editar, traduzir e para a acessibilidade mais tarde. Grave ao distribuir para dispositivos desconhecidos; incorpore quando o texto deve continuar a ser dados.
Ferramentas relacionadas: Conversor SRT/VTT/ASS para mover o texto das legendas entre os três formatos, Fala para legendas para gerar um ficheiro de legendas a partir de áudio, Vídeo para MKV para o contentor com o melhor suporte a legendas multipista, e Vídeo para MP4 para as bases da remuxagem.