Sottotitoli WebVTT (.vtt)
Raccomandazione StandardWeb Video Text Tracks (WebVTT) è lo standard web ufficiale del W3C per le didascalie, i sottotitoli e le descrizioni dei capitoli. È integrato nativamente negli elementi video HTML5 (<track>) e nel moderno HTTP Live Streaming (HLS).
Converti da SRT a VTT
Convertitore gratuito da SRT a VTT nel browser. Converti i file istantaneamente sul tuo dispositivo.
Ispezione e metadati
I sistemi operativi e gli analizzatori di file identificano i file WebVTT ispezionando la sequenza di byte binari iniziale:
Firma dell'intestazione a livello di byte (Magic Bytes)
I sistemi operativi e gli analizzatori di file identificano i file WebVTT ispezionando la sequenza di byte binari iniziale:
FIRMA ESADECIMALE (OFFSET 0):
57 45 42 56 54 54RAPPRESENTAZIONE ASCII: WEBVTT
Standardizzazione: Raccomandazione W3C WebVTT
Specifiche tecniche
| Architettura del contenitore | File di testo UTF-8 che inizia con la firma 'WEBVTT', seguito da blocchi opzionali STYLE e NOTE e blocchi di sottotitoli sequenziali |
| Compressione | Testo normale non compresso (solitamente compresso su HTTP tramite Gzip o Brotli) |
| Endianness dei byte | Flusso di testo UTF-8 |
| Spazi colore | Pieno supporto del modulo colori CSS livello 4 negli stili dei sottotitoli |
| Canali e struttura | Segmenti con timestamp, livello di affidabilità del riconoscimento vocale, formattazione CSS e impostazioni della posizione sullo schermo |
| Dimensioni massime | Numero illimitato di segmenti in sequenza |
| Trasparenza | Opacità e trasparenza alfa CSS complete, supportate tramite lo pseudo-elemento '::cue' |
| Streaming e progressivo | Streaming nativo in elementi HTML5 <video> e manifest video live HLS / DASH |
Matrice di confronto tecnico: WebVTT vs Concorrenti
| Attributo tecnico | WebVTT (Attuale) | SRT | ASS | SUB |
|---|---|---|---|---|
| Integrazione con HTML5 | Standard nativo al 100% (<track>) | Richiede conversione JS | Richiede WebAssembly | Richiede conversione |
| Stili CSS | Stili CSS nativi completi (::cue) | Solo tag HTML di base | Tag di override proprietari | Nessuno |
| Streaming HLS / DASH | WebVTT è usato per le tracce di testo temporizzate nei video del browser e in alcune playlist streaming; il supporto del lettore dipende dal formato di distribuzione | Supportato tramite muxing | Supporto di streaming limitato | Nessuno |
| Requisito dell'intestazione | Obbligo della stringa 'WEBVTT' sulla riga 1 | Nessuna intestazione richiesta | Sezione [Script Info] | Nessuna intestazione richiesta |
Modalità di corruzione comuni e guida al recupero esadecimale
Errore della console del browser: 'File WebVTT non valido: firma WEBVTT mancante'.
Causa principale: Stringa 'WEBVTT' mancante sulla riga 1 o righe vuote prima dell'intestazione.
Ripristino: Aggiungi 'WEBVTT\n\n' all'inizio del file utilizzando il convertitore di sottotitoli File2File.app.
Analisi di sicurezza e vettori di attacco del parser
I parser WebVTT dei browser elaborano segmenti non attendibili che possono causare attacchi di Cross-Site Scripting (XSS) se inseriti nel DOM senza prima sanificarli.
Vettori di attacco noti
- Iniezione XSS tramite contenuti HTML non sanificati dei segmenti, inseriti nel DOM del lettore video web.
- Server-Side Request Forgery (SSRF) durante la generazione automatica sul lato server delle miniature dei sottotitoli.
- Interruzione del servizio tramite selettori CSS malformati dei segmenti.
Migliori pratiche difensive: Usa il rendering nativo dell'elemento <track> del browser e sanifica il contenuto dei segmenti prima di inserirlo manualmente nel DOM.
Origini storiche e tappe fondamentali
Vantaggi principali
- L’elemento HTML <track> usa WebVTT per sottotitoli e didascalie. I browser visualizzano tempi e stili delle cue tramite il lettore video, con alcune differenze nelle funzioni supportate.
- Ampie possibilità di formattazione CSS: consente di personalizzare colori, font, sfondi e posizione con lo pseudo-elemento CSS nativo '::cue'.
- I servizi HLS e MPEG-DASH possono distribuire tracce di sottotitoli WebVTT insieme ai segmenti video. Verifica che il lettore di destinazione supporti il formato dei sottotitoli nella playlist e le tracce linguistiche.
Limiti tecnici e svantaggi
- Intestazione obbligatoria: il file deve iniziare esattamente con il testo 'WEBVTT'; altrimenti i browser lo rifiutano.
- Il separatore dei millisecondi con punto ('00:01:20.500') richiede la conversione dai file SRT legacy separati da virgola.
- I vecchi lettori hardware non basati su browser (come i box multimediali USB economici) spesso non dispongono del supporto nativo per WebVTT.
Curiosità tecniche
- Ogni file WebVTT valido deve iniziare con la parola esatta 'WEBVTT' sulla prima riga; qualsiasi altra cosa fa sì che i browser ignorino il file.
- WebVTT veniva originariamente chiamato 'WebSRT' perché era stato deliberatamente progettato per sembrare quasi identico ai classici sottotitoli SRT.
- WebVTT può essere usato anche per i capitoli video e per mostrare miniature interattive quando si passa il puntatore sulla barra di avanzamento.
Domande tecniche frequenti
A cosa serve WebVTT?
WebVTT è il formato standard Web ufficiale per aggiungere sottotitoli, didascalie, capitoli e descrizioni agli elementi HTML5 <video> sui siti web.
Come posso convertire un sottotitolo SRT in WebVTT?
Puoi convertire i file SRT in file WebVTT senza errori con un clic, usando File2File.app direttamente nel browser.
Perché i miei sottotitoli WebVTT non vengono visualizzati nel browser?
Assicurati che il file inizi con 'WEBVTT' alla prima riga, che sia seguito da una riga vuota e che il server web lo serva con l'intestazione 'Content-Type: text/vtt'.
Coppie di conversione per WebVTT correlate
La conversione di file SubRip Text in formato WebVTT trasforma didascalie in semplice testo in tracce temporali compatibili con HTML5 per i lettori video web.
La conversione di file WebVTT in SubRip Text consente la riproduzione fluida dei sottotitoli video HTML5 nei vecchi lettori multimediali desktop e nei dispositivi di montaggio meno recenti.