Trilha de aprendizado · Nível 4 · Tutorial 6

Adicionar legendas sincronizadas com track e WebVTT

Criar uma faixa simples de legendas em WebVTT e associá-la a um vídeo, identificando seu idioma e sua finalidade.

  • Nível: Intermediário
  • Duração: 20 min
  • 7 passos
Adicionar legendas sincronizadas com track e WebVTT

O que você vai percorrer

  1. Escolher a finalidade da faixa de legendas Distinguir legendas voltadas à tradução das falas de legendas que também comunicam falantes e sons relevantes. 2 min
  2. Reconhecer a estrutura de um arquivo WebVTT Organize um arquivo de legendas com cabeçalho, linhas em branco, marcas de tempo e texto. 3 min
  3. Sincronizar falas e sons relevantes Escreva e revise entradas de legenda com tempos coerentes, trechos legíveis e identificação de falantes e sons relevantes. 4 min
  4. Associar o WebVTT ao vídeo com track Vincule uma faixa ao vídeo e identifique seu arquivo, sua finalidade, seu idioma e seu nome de seleção. 3 min
  5. Indicar uma faixa preferencial sem impor a escolha Use default como preferência inicial e corrija seu uso em um vídeo com duas faixas. 2 min
  6. Entender as condições do teste no navegador Diferencie revisão textual de teste de reprodução e reconheça quando é possível conferir a faixa no navegador. 3 min
  7. Montar e revisar uma faixa completa Escreva uma faixa com três entradas, associe-a ao vídeo e revise conteúdo, tempos e atributos. 4 min

O que você vai aprender

  • Distinguir legendas de tradução de legendas que também identificam falantes e sons relevantes.
  • Montar um arquivo WebVTT simples com intervalos de tempo e texto sincronizado.
  • Associar a faixa ao vídeo usando track com src, kind, srclang e label.
  • Usar default como indicação de faixa preferencial, respeitando a possibilidade de escolha do usuário.
  • Escrever e revisar o WebVTT e o track como prática principal; como teste opcional no computador do próprio aluno, selecionar a faixa nos controles nativos e conferir sua sincronização com um vídeo qualquer.

Antes de começar

  • Incorporar áudio e vídeo com controles nativos
  • Criar e atualizar um arquivo HTML no navegador

Passo 1 de 7

Escolher a finalidade da faixa de legendas

Distinguir legendas voltadas à tradução das falas de legendas que também comunicam falantes e sons relevantes.

O que a legenda precisa comunicar?

Texto no momento certo

Legendas sincronizadas apresentam texto nos momentos correspondentes às falas e, quando necessário, aos sons relevantes do vídeo. Antes de escrever a faixa, decida quais informações ela precisa comunicar.

Duas finalidades

O atributo kind declara a finalidade da faixa:

  • kind="subtitles": legendas das falas, geralmente traduzidas para quem não compreende o idioma do áudio.
  • kind="captions": legendas que comunicam falas, identificam falantes quando necessário e descrevem sons relevantes para compreender o conteúdo sonoro sem ouvir.

A diferença está na informação oferecida, não apenas no idioma da legenda.

Escolha pela finalidade

Uma entrevista traduzida

Uma entrevista tem áudio em espanhol. Você prepara uma faixa em português apenas com a tradução das falas, para pessoas que ouvem o áudio, mas não entendem espanhol. Qual declaração corresponde a essa finalidade?

Quando a fala não conta tudo

Exemplo

Por que Lia respondeu?

Imagine uma cena: a campainha toca e Lia, fora do enquadramento, responde: “Já vou!”.

Uma faixa que mostre apenas “Já vou!” deixa de comunicar o som que motivou a resposta. Uma faixa com finalidade captions poderia apresentar, nos momentos correspondentes:

[campainha toca]

Lia: Já vou!

O texto comunica tanto o som relevante quanto quem está falando.

Dica

Declarar não é criar

Escolher kind="captions" não acrescenta informações automaticamente. Quem prepara a faixa precisa escrever as falas, as identificações necessárias e os sons relevantes. A finalidade declarada deve corresponder ao conteúdo.

Revise a proposta da faixa

O que está faltando?

Em uma cena, alguém bate à porta e a personagem diz: “Pode entrar”. A faixa contém apenas a tradução dessa fala.

Para atender a quem acompanha sem ouvir, qual valor de kind você escolheria e o que acrescentaria ao texto? Trocar apenas o atributo resolveria?

Escreva pelo menos 20 caracteres (0/20).

Passo 2 de 7

Reconhecer a estrutura de um arquivo WebVTT

Organize um arquivo de legendas com cabeçalho, linhas em branco, marcas de tempo e texto.

Um arquivo, duas entradas

A estrutura básica

O WebVTT é um arquivo de texto simples, salvo com extensão .vtt e codificação UTF-8.

Ele começa com o cabeçalho WEBVTT, em letras maiúsculas. Depois vêm as entradas de legenda: cada uma contém uma linha com os tempos de início e fim, seguida pelo texto.

Exemplo completo: legenda.vtt

webvtt
WEBVTT

00:00:01.000 --> 00:00:03.500
Olá! Vamos começar.

00:00:04.000 --> 00:00:06.000
Este é o segundo trecho.

Dica

As linhas em branco fazem parte da estrutura

Deixe uma linha em branco após WEBVTT e outra entre as entradas. Dentro de cada entrada, o texto vem logo abaixo dos tempos, sem linha em branco entre eles.

Monte a sequência

Do cabeçalho à segunda entrada

Coloque os componentes na ordem de um arquivo WebVTT. Os rótulos entre parênteses representam linhas vazias; não são textos para escrever no arquivo.

  1. 00:00:04.000 --> 00:00:06.000 Este é o segundo trecho.
  2. (linha em branco após o cabeçalho)
  3. WEBVTT
  4. 00:00:01.000 --> 00:00:03.500
  5. (linha em branco entre as entradas)
  6. Olá! Vamos começar.

Leia as marcas de tempo

Dois-pontos e ponto têm lugares diferentes

Vamos usar o formato horas:minutos:segundos.milissegundos, como em 00:00:03.500.

Os dois-pontos separam horas, minutos e segundos. Antes dos milissegundos, use ponto, não vírgula, e escreva três dígitos: .500 representa 500 milissegundos.

Início à esquerda, fim à direita

webvtt
00:00:01.000 --> 00:00:03.500

Entre as duas marcas, escreva -->: dois hífens seguidos do sinal de maior, com um espaço antes e outro depois. No exemplo, o início é 00:00:01.000 e o fim é 00:00:03.500.

Complete a linha de tempos

Qual é o separador?

Digite apenas o separador que falta. Os espaços ao redor dele já estão indicados.

00:00:02.000 ___ 00:00:05.250

Escreva a marca de fim

Complete com zero horas, zero minutos, cinco segundos e 250 milissegundos. Use o formato com horas e digite apenas a marca de tempo.

00:00:02.000 --> ___

Passo 3 de 7

Sincronizar falas e sons relevantes

Escreva e revise entradas de legenda com tempos coerentes, trechos legíveis e identificação de falantes e sons relevantes.

Cada entrada tem seu momento

Conte a partir do início do vídeo

Os tempos indicam posições na reprodução, sempre contadas a partir do início do vídeo — não da legenda anterior.

Em cada entrada, o fim precisa ser posterior ao início. Organize as entradas pelo tempo inicial e ajuste os intervalos às falas e aos sons correspondentes, evitando atrasos e sobreposições involuntárias.

Posição não é duração

Esta legenda entra aos 6 segundos e sai aos 8,5 segundos do vídeo. Portanto, fica visível por 2,5 segundos.

webvtt
WEBVTT

00:00:06.000 --> 00:00:08.500
Já podemos começar.

Confira os intervalos

Há sobreposição?

Uma entrada vai de 2 s a 5 s; a seguinte, de 4,5 s a 7 s. Esses intervalos não se sobrepõem.

Divida pelo sentido, preserve os sons

Dê tempo para ler

Divida falas longas em trechos que façam sentido, aproveitando pausas e limites de frases. Leia cada trecho considerando seu tempo de exibição: texto demais em um intervalo curto dificulta a leitura. Reorganize a divisão sem deslocar as legendas para momentos que não correspondam à fala.

Exemplo

Uma divisão que mantém o sentido

Fala: “Separe os ingredientes. Depois, misture tudo.”

Se há uma pausa entre as frases, uma boa divisão é:

  • Entrada 1: “Separe os ingredientes.”
  • Entrada 2: “Depois, misture tudo.”

Evite encerrar a primeira entrada em “Separe os”: isso deixa a ideia incompleta.

Dica

Quem fala? O que se ouve?

Quando houver ambiguidade sobre quem fala, use uma identificação textual, como “LIA: Separe os ingredientes.”. Para um som importante à compreensão, use uma descrição curta, como “[campainha toca]”. São textos comuns da legenda; não exigem marcação especial.

Escreva e revise uma cena

Cena fictícia: alguém chegou

Ana e Bruno falam sem aparecer na imagem. Os tempos abaixo são contados desde o início do vídeo:

  • De 1 s a 4 s — Ana: “Confira o endereço.”
  • De 4 s a 7 s — Ana: “Depois, toque a campainha.”
  • De 7 s a 9 s — a campainha toca, anunciando a chegada.
  • De 9 s a 12 s — Bruno: “Já vou abrir!”

Fora desses intervalos, há silêncio. Você tem todas as informações necessárias; não precisa de um vídeo para realizar esta atividade.

Monte quatro entradas

Escreva um WebVTT para uma faixa captions usando os intervalos descritos. Mantenha cada frase inteira, identifique quem fala em cada entrada e inclua a campainha.

Antes de responder, revise: os fins são posteriores aos inícios? As entradas estão em ordem e sem sobreposição? Todas as falas e o som foram preservados?

Passo 4 de 7

Associar o WebVTT ao vídeo com track

Vincule uma faixa ao vídeo e identifique seu arquivo, sua finalidade, seu idioma e seu nome de seleção.

O vínculo fica no HTML

Um elemento que aponta para a faixa

Insira <track> dentro de <video>, depois dos elementos <source>, quando houver. Ele é um elemento vazio: não recebe conteúdo nem uma tag </track>. As legendas ficam no arquivo .vtt.

Neste exemplo de marcação, o vídeo tem áudio em inglês e a faixa contém a tradução das falas para português:

Vídeo e faixa são arquivos separados

html
<video controls>
  <source src="video.mp4" type="video/mp4">
  <track src="legendas/traducao-pt.vtt"
         kind="subtitles"
         srclang="pt-BR"
         label="Português (Brasil) — tradução">
</video>

Quatro atributos, quatro funções

  • src: caminho do arquivo WebVTT, não do vídeo.
  • kind: finalidade da faixa; aqui, subtitles para a tradução das falas.
  • srclang: código do idioma do texto da faixa, não necessariamente do áudio ou da página. É obrigatório para subtitles.
  • label: nome compreensível apresentado na seleção de faixas. Em vez de apenas um código como pt-BR, pode informar “Português (Brasil) — tradução”.

Relacione atributo e função

O que cada atributo informa?

Associe cada atributo de <track> à informação que ele fornece.

Toque em um item e depois no par correspondente.

Leia a faixa antes de associá-la

Uma cena para revisão

Considere uma cena fictícia com áudio em inglês: uma campainha toca e Lia avisa que alguém está na porta.

A faixa abaixo foi escrita em português do Brasil para comunicar tanto a fala quanto o som relevante. Considere que ela será salva como cena-pt.vtt, na subpasta legendas, ao lado de index.html.

Observe o conteúdo: ele orienta a escolha de kind, srclang e label.

Conteúdo completo de legendas/cena-pt.vtt

webvtt
WEBVTT

00:00:01.000 --> 00:00:03.000
[Campainha toca]

00:00:03.000 --> 00:00:06.000
LIA: Alguém está na porta.

Complete a associação no documento

Do conteúdo para a marcação

Complete os quatro valores de <track> no documento abaixo. A faixa está em legendas/cena-pt.vtt e contém a fala de Lia e a campainha em português do Brasil, embora o áudio seja em inglês.

Use o rótulo “Português (Brasil) — falas e sons”. Esta é uma revisão de código: não é necessário ter ou reproduzir o vídeo.

index.html — documento para completar

html
<!doctype html>
<html lang="pt-BR">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Uma visita inesperada</title>
</head>
<body>
  <main>
    <h1>Uma visita inesperada</h1>
    <p>Cena com áudio em inglês e faixa em português.</p>
    <video controls>
      <source src="cena.mp4" type="video/mp4">
      <track src="___" kind="___" srclang="___" label="___">
      Seu navegador não oferece suporte ao elemento de vídeo.
    </video>
  </main>
</body>
</html>

Escreva o track completo

Digite apenas o elemento <track> com os quatro valores preenchidos. Antes de responder, confira sua posição no documento e a correspondência dos atributos com o arquivo WebVTT.

Escreva pelo menos 20 caracteres (0/20).

Passo 5 de 7

Indicar uma faixa preferencial sem impor a escolha

Use default como preferência inicial e corrija seu uso em um vídeo com duas faixas.

Preferência, não obrigação

O que default indica

Adicionar default a um track indica a faixa preferencial quando as preferências do usuário não determinam outra seleção.

Isso não obriga as legendas a ficarem ligadas: o usuário pode selecionar outra faixa ou desativá-las.

Dica

A interface pode mudar

A apresentação do seletor de legendas varia entre navegadores e dispositivos. Não espere encontrar sempre o mesmo ícone ou menu nos controles nativos.

Quem controla a escolha?

Avalie a afirmação

Uma faixa com default fica sempre ligada, mesmo que o usuário escolha outra faixa ou desative as legendas.

A presença do atributo é que vale

Não use default="false" para desativar

default é booleano: sua presença já indica a preferência. Escrever default="false" não desativa essa indicação.

Para indicar preferência, escreva apenas default, como abaixo. Para retirar a indicação, remova o atributo inteiro.

Faixa indicada como preferencial

html
<track src="legendas-pt.vtt" kind="captions"
       srclang="pt-BR" label="Português (Brasil)" default>

Dica

No máximo uma faixa preferencial

Use default em, no máximo, um track do mesmo vídeo. Também é permitido não indicar nenhuma faixa como preferencial.

Revise duas faixas

Trecho com uso incorreto de default

html
<video controls src="aula.mp4">
  <track src="legendas-pt.vtt" kind="captions" srclang="pt-BR" label="Português (Brasil)" default="false">
  <track src="legendas-en.vtt" kind="subtitles" srclang="en" label="Inglês" default>
</video>

Indique português como preferência

Reescreva somente as duas tags track para indicar português como faixa preferencial. Corrija o uso de default e preserve os demais atributos.

Passo 6 de 7

Entender as condições do teste no navegador

Diferencie revisão textual de teste de reprodução e reconheça quando é possível conferir a faixa no navegador.

Revisar não é testar a reprodução

A prática principal não depende de servidor

Escrever e revisar o HTML e o WebVTT é a prática principal deste tutorial e pode ser concluída no seu editor, sem servidor.

A revisão confere o conteúdo dos arquivos. Já o teste de reprodução verifica se a faixa realmente carrega e se as legendas acompanham os acontecimentos do vídeo.

Atenção

O vídeo tocar não garante que a faixa carregou

Ao abrir o HTML diretamente do computador, o endereço costuma começar com file://. Nesse modo, o navegador pode impedir o carregamento do WebVTT mesmo quando o vídeo é reproduzido. Portanto, a ausência de legendas não comprova, por si só, um erro no arquivo .vtt.

O que a ausência de legendas permite concluir?

Vídeo sem legendas em file://

Você abriu o HTML diretamente do computador. O vídeo toca, mas as legendas não aparecem. Qual conclusão é adequada?

Quando o teste opcional é viável

Os arquivos precisam estar sendo servidos

Para testar o carregamento da faixa, a página, o vídeo e o WebVTT precisam estar disponíveis por HTTP ou HTTPS. Isso depende de um ambiente que já sirva esses arquivos no seu computador ou nas ferramentas que você usa.

Trocar apenas file:// por http:// na barra de endereço não disponibiliza os arquivos.

O que observar com um vídeo próprio

Antes desse teste, adapte as falas, os sons relevantes e os intervalos do WebVTT ao conteúdo real de um vídeo seu.

Depois, acesse a página servida, selecione a faixa nos controles nativos e reproduza o trecho. O resultado esperado é que cada legenda apareça e desapareça nos momentos correspondentes à fala ou ao som, com tempo suficiente para leitura.

Dica

Sem esse ambiente? Continue com a revisão

Você não precisa instalar ferramentas nem executar o teste para avançar. É possível concluir a prática pela revisão textual, sem afirmar que a sincronização foi observada em reprodução.

Planeje a sequência do teste

Do acesso à observação

Imagine que o WebVTT já foi adaptado ao vídeo próprio e que todos os arquivos estão disponíveis por HTTP ou HTTPS. Ordene as ações do teste opcional.

  1. Acessar o endereço HTTP ou HTTPS da página servida.
  2. Selecionar a faixa de legendas nos controles nativos do vídeo.
  3. Reproduzir o trecho e comparar a entrada e a saída das legendas com as falas e os sons.

Passo 7 de 7

Montar e revisar uma faixa completa

Escreva uma faixa com três entradas, associe-a ao vídeo e revise conteúdo, tempos e atributos.

Seu desafio final

Uma cena compreensível sem ouvir

Crie uma faixa em português do Brasil para a cena descrita abaixo. No seu editor, salve a base HTML como index.html; o arquivo legendas-pt-BR.vtt ficará na mesma pasta.

A cena é fictícia: cena.mp4 é apenas um nome de referência. Você não precisa possuir esse vídeo nem configurar um servidor para concluir a escrita e a revisão.

Exemplo

Roteiro completo: uma visita

O vídeo dura 10 segundos e mostra uma porta. Ana e Bruno falam em português do Brasil, mas não aparecem na imagem; por isso, identifique quem fala.

  • De 1 s a 3,5 s: Ana pergunta “A visita já chegou?”
  • De 4 s a 6 s: a campainha toca, anunciando a chegada da visita.
  • De 6,5 s a 9 s: Bruno diz “Eu abro a porta.”

Nos demais intervalos, há silêncio. Não existem outros sons relevantes. Use uma entrada para cada acontecimento.

Base de index.html

Acrescente a esta página o elemento track que você vai escrever.

html
<!doctype html>
<html lang="pt-BR">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Uma visita</title>
</head>
<body>
  <main>
    <h1>Uma visita</h1>
    <video controls>
      <source src="cena.mp4" type="video/mp4">
      <p>Seu navegador não oferece suporte ao elemento de vídeo.</p>
    </video>
  </main>
</body>
</html>

Escreva sua solução

Do roteiro ao WebVTT e ao track

No seu editor:

  1. Crie legendas-pt-BR.vtt como texto simples em UTF-8, com três entradas para a cena.
  2. Acrescente o track ao HTML, no local correto, com src, kind, srclang e label.
  3. Decida se deseja indicar essa faixa como preferencial usando default.

Cole abaixo o conteúdo do WebVTT e apenas o elemento track acrescentado. Justifique a escolha de kind e a presença ou ausência de default. Não é necessário enviar arquivos.

Revise antes de concluir

Confira o conjunto no seu editor

Compare sua solução com o exemplo e corrija o que for necessário:

  • Estrutura: arquivo .vtt em UTF-8, WEBVTT no início e linhas em branco após o cabeçalho e entre as entradas.
  • Tempos: ponto antes dos milissegundos, espaços ao redor de -->, fim posterior ao início e entradas ordenadas, sem sobreposição nesta cena.
  • Conteúdo: falas completas e legíveis, Ana e Bruno identificados e campainha descrita no intervalo correspondente.
  • Associação: track dentro de video, após source, sem </track>; src corresponde exatamente ao arquivo criado.
  • Identificação: kind="captions", srclang="pt-BR" e um label compreensível.
  • Preferência: no máximo um default no vídeo. Para não indicar preferência, remova o atributo; não use default="false".

Teste opcional com um vídeo próprio

Se você já dispõe de um ambiente HTTP ou HTTPS no seu computador ou nas suas ferramentas, use um vídeo próprio compatível com o navegador. Ajuste o source ao nome e ao tipo desse arquivo e adapte falas, sons e tempos do WebVTT ao conteúdo real.

Com a página e os arquivos servidos nesse ambiente, selecione a faixa nos controles nativos e observe se cada entrada aparece e desaparece nos momentos esperados. Se houver atraso ou sobreposição, ajuste e confira novamente.

Sem esse ambiente, conclua pela revisão textual. Abrir por file:// pode impedir o carregamento da faixa; isso não comprova um erro no WebVTT.

Registre o resultado

O que você conferiu?

Registre uma correção feita ou um ponto confirmado na revisão. Depois, indique seu resultado: “revisado em texto” ou “também testado em reprodução”.

Se testou, informe o navegador, a faixa selecionada e o que observou na entrada e na saída das legendas. Se não testou, deixe explícito o que ainda não foi confirmado.

Resumo

A competência que você praticou

  • Escolher a finalidade da faixa e escrever o conteúdo correspondente em WebVTT.
  • Associar a faixa ao vídeo com arquivo, idioma, rótulo e preferência coerentes.
  • Revisar o conjunto e distinguir código conferido de sincronização observada.

Tutorial concluído

Parabéns! Você concluiu: Adicionar legendas sincronizadas com track e WebVTT

Leve este roteiro de criação e revisão para as faixas de legendas dos seus próximos vídeos.

Baixe o Aplicativo agora para ter acesso a + de 5000 cursos gratuitos, exercícios, certificado e muito conteúdo sem pagar nada!

  • Cursos online 100% gratuitos do início ao fim

    Milhares de cursos online em vídeo, ebooks e áudiobooks.

  • Mais de 60 mil exercícios gratuitos

    Para testar seus conhecimentos no decorrer dos cursos online

  • Certificado Digital gratuito válido em todo o Brasil

    Gerado diretamente na galeria de fotos do seu celular e enviado ao seu e-mail

Aplicativo Cursa na tela de ebook, na tela de curso em vídeo e na tela de exercícios do curso, mais o certificado de conclusão de curso