O que é WebVTT?

WebVTT é um formato de texto do W3C para marcações temporizadas associadas a áudio ou vídeo na web. Um arquivo .vtt pode conter legendas, legendas descritivas, rótulos de capítulos, descrições, posicionamento e estilização limitada das marcações.

Como funciona o WebVTT

Um arquivo WebVTT contém texto em UTF-8, é identificado pelo tipo de mídia text/vtt e começa com a string WEBVTT, seguida por blocos opcionais de região e estilo e, depois, por blocos de marcações. Cada marcação tem uma linha de temporização e um conteúdo que é renderizado como texto de legenda descritiva ou legenda, ou interpretado como título de capítulo ou metadados, dependendo de como o software consumidor usa a faixa. As configurações da marcação na linha de temporização controlam a direção da escrita, a linha e a posição, o tamanho, o alinhamento e a região. O texto das marcações aceita apenas um pequeno conjunto de tags, e o CSS atua sobre as marcações por meio do pseudoelemento ::cue, que respeita uma lista fixa de propriedades. As marcas de tempo são interpretadas em relação à linha do tempo da mídia que o arquivo acompanha, portanto um arquivo temporizado para uma versão editada precisa ter sua temporização reajustada quando essa mídia é aparada, acelerada ou substituída.

Informações essenciais

  1. A linha de temporização de uma marcação é composta por uma marca de tempo inicial, a string --> e uma marca de tempo final, sendo cada marca de tempo escrita como mm:ss.ttt ou hh:mm:ss.ttt, com um ponto antes de exatamente três dígitos de milissegundos. Quando o analisador não consegue ler essa linha, ele descarta a marcação e passa ao próximo bloco; assim, uma linha de temporização inválida remove uma marcação sem interromper o restante do arquivo.
  2. Um elemento HTML track informa o endereço do arquivo em src, sua função em kind e seu idioma em srclang; kind assume o valor padrão de legendas quando omitido, e srclang é obrigatório para legendas. Um arquivo com origem diferente da página só é carregado se o elemento de mídia pai tiver um atributo crossorigin e a resposta passar na verificação de CORS. Sem esse atributo, o navegador restringe a requisição à própria origem da página, e a faixa não é carregada.
  3. O WebVTT foi baseado no formato SRT do SubRip, mas um arquivo SRT não é um arquivo WebVTT válido. Ele não tem a assinatura WEBVTT, sem a qual um analisador WebVTT interrompe o processamento, e as linhas de temporização do SRT convencionalmente escrevem os milissegundos após uma vírgula, enquanto o WebVTT exige um ponto. A conversão de WebVTT para SRT perde mais informações: a marcação básica do SRT, composta por número de sequência, linha de temporização e texto, não tem um local definido para configurações de marcação, regiões ou blocos STYLE.
  4. O HTTP Live Streaming transporta legendas como segmentos WebVTT. A RFC 8216 recomenda que cada segmento inclua um cabeçalho X-TIMESTAMP-MAP que mapeia os tempos das marcações para as marcas de tempo MPEG-2 das outras representações. Quando o cabeçalho está ausente, os clientes devem presumir que o tempo 0 da marcação corresponde à marca de tempo MPEG-2 de valor 0, o que só está correto se as marcas de tempo de áudio e vídeo também começarem nesse ponto.

Quando o WebVTT é importante

Um reprodutor de vídeo HTML pode carregar faixas WebVTT para legendas descritivas, capítulos ou metadados temporizados. Uma marcação cuja linha de temporização não pode ser interpretada é descartada, e propriedades CSS fora do conjunto permitido são ignoradas; assim, um arquivo pode ser carregado mesmo com algumas marcações ausentes ou sem estilização.

Como a Transloadit ajuda com WebVTT

O Robot /speech/transcribe da Transloadit retorna uma transcrição como arquivo de legendas WebVTT quando seu parâmetro format é webvtt. O Robot /video/subtitle aceita arquivos de legendas SRT e VTT e os adiciona a um vídeo como um fluxo separado ou os incorpora permanentemente à imagem.

Ativar speaker_labels adiciona rótulos de identificação de falantes apenas às saídas json e meta; a documentação do Robot informa que a saída WebVTT permanece inalterada.

Explore os formatos de arquivo e os recursos de compressão da Transloadit

Fontes

Transforme conhecimento sobre mídia em um pipeline funcional

Conecte uploads, processamento, IA, armazenamento e entrega por meio de uma única API declarativa, com o stack de codificação, o ajuste de escala e as constantes mudanças de formatos gerenciados para você.

Experimente a Transloadit gratuitamente