Legenda WebVTT (.vtt)
Recomendação PadrãoWeb Video Text Tracks (WebVTT) é o padrão da W3C para legendas, closed captions e descrições de capítulos. É integrado a elementos de vídeo HTML5 (<track>) e à transmissão ao vivo por HTTP (HLS).
Converter SRT para VTT
Conversor gratuito de SRT para VTT no navegador. Converta arquivos instantaneamente no seu dispositivo.
Inspeção e metadados
Sistemas operacionais e analisadores de arquivos identificam arquivos WebVTT pela sequência inicial de bytes:
Assinatura do arquivo em bytes (magic bytes)
Sistemas operacionais e analisadores de arquivos identificam arquivos WebVTT pela sequência inicial de bytes:
ASSINATURA HEXADECIMAL (DESLOCAMENTO 0):
57 45 42 56 54 54REPRESENTAÇÃO ASCII: WEBVTT
Padronização: Recomendação W3C WebVTT
Especificações técnicas
| Estrutura do contêiner | Arquivo de texto UTF-8 que começa com a assinatura WEBVTT, seguida por blocos de legenda e, opcionalmente, blocos STYLE e NOTE |
| Compressão | Texto simples não compactado (tipicamente compactado via HTTP por Gzip ou Brotli) |
| Ordem dos bytes (endianness) | Fluxo de texto UTF-8 |
| Espaços de cor | Suporte completo ao módulo de cores CSS Nível 4 nos estilos de legenda |
| Canais e Estrutura | Legendas com marcação de tempo, confiança de reconhecimento de fala, estilos CSS e configurações de posição na tela |
| Dimensões Máximas | Legendas sequenciais ilimitadas |
| Transparência | Suporte a opacidade CSS e transparência alfa por meio do pseudo-elemento ::cue |
| Streaming e Progressivo | Transmissão nativa em elementos HTML5 <video> e manifestos de vídeo ao vivo HLS / DASH |
Matriz de comparação técnica: WebVTT e formatos concorrentes
| Atributo técnico | WebVTT (Atual) | SRT | ASS | SUB |
|---|---|---|---|---|
| Integração Web HTML5 | 100% padrão nativo (<track>) | Requer conversão JS | Requer WebAssembly | Requer conversão |
| Estilização CSS | Estilização CSS nativa completa (::cue) | Apenas tags HTML básicas | Tags de substituição proprietárias | Nenhum |
| Transmissão HLS / DASH | Padrão universal de transmissão por streaming | Suportado via multiplexação | Suporte a streaming limitado | Nenhum |
| Requisito de Cabeçalho | Linha 1 com texto mágico estrito 'WEBVTT' | Nenhum cabeçalho necessário | Seção [Script Info] | Nenhum cabeçalho necessário |
Modos comuns de corrupção e guia de recuperação com editor hexadecimal
Erro no console do navegador: 'Malformed WebVTT file: Missing WEBVTT signature'.
Causa principal: Ausência da string 'WEBVTT' na linha 1, ou linhas em branco antes do cabeçalho.
Recuperação: Adicione 'WEBVTT\n\n' no topo do arquivo usando o Conversor de Legendas File2File.app.
Análise de segurança e vetores de ataque a analisadores
Analisadores WebVTT em navegadores web processam legendas não confiáveis que podem levar a Cross-Site Scripting (XSS) se renderizadas sem sanitização no DOM.
Vetores de ataque conhecidos
- Injeção de XSS via conteúdos de legenda HTML não sanitizados inseridos no DOM do reprodutor de vídeo web.
- Server-Side Request Forgery (SSRF) durante a geração automatizada de miniaturas de legendas no lado do servidor.
- Negação de serviço através de seletores de legenda CSS malformados.
Melhores práticas defensivas: Use a renderização nativa do elemento <track> do navegador e sanitize o conteúdo das legendas antes de inseri-lo manualmente no DOM.
Origens históricas e marcos
Principais vantagens
- Padrão nativo da web no HTML5: compatível diretamente com todos os navegadores no elemento <track> sem bibliotecas externas.
- Suporte a estilização CSS rica: personalize cores, fontes, planos de fundo e posições usando o pseudo-elemento CSS nativo '::cue'.
- Suporte de primeira classe à transmissão ao vivo: integrado aos manifestos de streaming Apple HLS e MPEG-DASH para legendas de transmissão.
Limitações técnicas e desvantagens
- Requisito de cabeçalho estrito: o arquivo deve começar com o texto exato 'WEBVTT' na primeira linha, caso contrário os navegadores o rejeitam.
- O separador de milissegundos é o ponto ('00:01:20.500'), por isso é necessário converter arquivos SRT legados que usam vírgula.
- Reprodutores de hardware mais antigos que não sejam navegadores (como caixas de mídia USB baratas) frequentemente carecem de suporte nativo ao WebVTT.
Curiosidades técnicas
- Todo arquivo WebVTT válido deve começar com a palavra exata 'WEBVTT' na primeira linha; qualquer outra coisa faz com que os navegadores ignorem o arquivo.
- O WebVTT foi originalmente chamado de 'WebSRT' porque foi deliberadamente projetado para parecer quase idêntico às legendas SRT clássicas.
- O WebVTT também pode ser usado para capítulos de vídeo e dicas de ferramentas de miniaturas interativas ao passar o mouse sobre as barras de progresso do vídeo.
Perguntas técnicas frequentes
Para que o WebVTT é usado?
WebVTT é o formato padrão da web para adicionar legendas, closed captions, capítulos e descrições a elementos <video> HTML5.
Como posso converter uma legenda SRT para WebVTT?
Você pode converter arquivos SRT em arquivos WebVTT limpos em um clique usando o File2File.app diretamente no seu navegador.
Por que minhas legendas WebVTT não aparecem no navegador?
Certifique-se de que seu arquivo comece com 'WEBVTT' na linha 1, tenha uma linha em branco após ele e que seu servidor web o sirva com o cabeçalho 'Content-Type: text/vtt'.
Conversões de WebVTT relacionadas
A conversão de arquivos SubRip Text para o formato WebVTT transforma legendas em texto simples em faixas temporais modernas compatíveis com HTML5 para reprodutores de vídeo na Web.
A conversão de arquivos WebVTT para SubRip Text permite reproduzir legendas de vídeos HTML5 em reprodutores de mídia para desktop e equipamentos de edição antigos.