Sottotitoli6 min di lettura

Cos'è un file VTT

Il WebVTT è il formato che i browser leggono. Cosa aggiunge rispetto all'SRT, quando ti servirà e a cosa serve ogni pezzo.

Il WebVTT è il formato di sottotitolo che un browser sa leggere. Ed è l'unico: metti un SRT in un video HTML5 e non succede assolutamente niente. Né errore, né avviso, né sottotitolo.

La sua estensione è .vtt e dentro somiglia molto a un SRT. Tre cose cambiano: porta un'intestazione obbligatoria, mette un punto dove un SRT mette una virgola, e sa esprimere considerevolmente più di quanto un SRT riesca.

Cosa c'è dentro

WEBVTT

1
00:00:04.120 --> 00:00:06.480
Prima di entrare nei numeri,
ripassiamo dove siamo.

2
00:00:06.600 --> 00:00:09.000 line:90% align:start
Quello che non mi aspettavo
era il calo della seconda settimana.

Quella prima riga è obbligata a dire WEBVTT. Se non compare, se una marca dell'ordine dei byte le sta davanti, o se una riga vuota la precede, il browser butta via tutto il file.

Da lì in poi, gli stessi blocchi di sempre. Con due differenze che si vedono a colpo d'occhio: il punto davanti ai millisecondi, e la possibilità di appendere impostazioni in fondo alla riga dei tempi.

Cosa aggiunge rispetto a un SRT

Posizione e allineamento. line:90% fa scendere il sottotitolo, align:start lo attacca a sinistra e position:20% lo sposta di lato. Comodo per non coprire una scritta che è già nell'immagine.

Stile. Un blocco STYLE con CSS vero in cima al file, e classi sparse nel testo tramite <c.narratore>. Colori, dimensioni, ombre.

Chi parla. Un'etichetta <v Marta>Buongiorno</v> è il modo in cui si segna la voce. I player capaci di riconoscerla possono dipingerla di un altro colore; gli altri passano avanti. Su un'intervista o su una riunione, quella è la frontiera fra un muro di testo e qualcosa di leggibile.

Note e regioni. I blocchi NOTE conservano commenti che nessuno vede, e REGION delimita zone dello schermo con uno scorrimento proprio, come le scritte che salgono in una diretta.

Identificatori di battuta. Sopra la riga dei tempi, ogni blocco accetta un nome — intro, domanda-3 — per puntarci da JavaScript.

Quando ti serve un VTT

Ogni volta che il video gira dentro un browser. Se la tua pagina contiene un <video> col suo <track>, quel file deve essere WebVTT:

<video controls>
  <source src="riunione.mp4" type="video/mp4" />
  <track src="riunione.vtt" kind="subtitles" srclang="it" label="Italiano" default />
</video>

E lo stesso coi player web di oggi (Video.js, Plyr, Shaka) e con la trasmissione HLS, che distribuisce i sottotitoli come segmenti WebVTT.

Passata la porta del browser, quasi nessuno lo chiede: i programmi di montaggio da computer, i player che tutti hanno sempre usato e quasi tutti i moduli di caricamento si aspettano ancora un SRT.

Due cose che si rompono e non sono colpa del file

Il server è obbligato a mandarlo come text/vtt. Consegnato come text/plain o come application/octet-stream, certi browser lo buttano via. Questo si tocca nella configurazione del server, mai nel file.

E deve venire dalla stessa origine, o portare CORS. Un .vtt ospitato su un altro dominio senza l'intestazione Access-Control-Allow-Origin non si carica mai, per quanto bene l'indirizzo funzioni quando lo apri a mano. È la causa numero uno del classico «il video gira, i sottotitoli no».

Nessuno dei due è un problema di contenuto e nessuno dei due lascia un errore visibile sulla pagina. Compaiono nella scheda di rete degli strumenti del browser, e solo se sai che devi andare a guardare lì.

Convertirlo

Il tragitto da SRT a VTT è semplice: mettere l'intestazione, mettere un punto dove c'era la virgola, e proteggere quei caratteri & e < che un SRT tiene come testo e che il WebVTT prenderebbe per marcatura. Il nostro convertitore da SRT a VTT risolve tutti e tre nel tuo browser, senza che il file ne esca.

Al contrario, tutto quello che un SRT non sa dire resta fuori — la posizione, lo stile, le regioni —, quindi il convertitore da VTT a SRT lo scarta e trasforma le etichette di voce in un «Marta:» che apre la riga, che è come un SRT sa mostrarlo. Quale scegliere e per cosa.

Se quello che hai è il video e non i sottotitoli

Caricalo e restituiamo la trascrizione coi suoi minuti, con ogni voce separata e con un nome, e con un riassunto. Il VTT ne cade già montato e con le voci segnate. Senza account per iniziare.

Strumento collegato

SRT in VTT

SRT in VTT

Trasforma la tua registrazione in testo

Testo con i minuti, ogni voce riconosciuta e un riassunto di quello che conta. Senza account per iniziare.