Converti SubRip (.srt) in WebVTT
Rendi un file .srt valido per l'elemento HTML5 <track> e per i moderni lettori video. Intestazione WEBVTT aggiunta, timecode riformattati, nessun caricamento richiesto.
I tuoi file non toccano mai un server. Ogni conversione in questa pagina viene eseguita localmente nel tuo browser usando l'API FileReader di JavaScript. Niente viene caricato, registrato o memorizzato. Sicuro per registrazioni riservate di Zoom/Teams, video non pubblicati e interviste legali.
Come funziona la conversione da SRT a VTT
Se hai mai provato a inserire un file .srt direttamente in un tag HTML5 <track kind="captions" src="captions.srt">, probabilmente hai scoperto che i browser lo ignorano semplicemente. L'elemento <track> (e il menu nativo dei sottotitoli che ogni browser moderno costruisce attorno a esso) capisce solo il WebVTT. L'SRT, nonostante sia il formato più supportato tra i lettori e gli editor desktop, non fa parte in alcun modo della specifica HTML5.
La correzione è meccanica ma precisa: il WebVTT richiede una riga letterale WEBVTT in testa al file, e il separatore dei millisecondi di ogni timecode deve essere un punto invece della virgola dell'SRT (00:00:09,400 → 00:00:09.400). Se sbagli anche solo uno di questi due dettagli, il browser non renderizzerà i sottotitoli senza mostrare alcun messaggio di errore. Il convertitore di SubToolDesk analizza il tuo SRT localmente, lo ricostruisce con un'intestazione valida e timecode corretti, e rinumera i blocchi in modo pulito, tutto dentro la tua scheda del browser.
Istruzioni passo dopo passo
- Trascina il tuo file
.srtsul convertitore qui sopra, oppure incolla il suo contenuto nel riquadro a sinistra. - Verifica che il badge del formato rilevi SRT.
- Premi Scarica per salvare un file
.vttvalido, con un nome corrispondente al tuo file originale. - Richiamalo da un elemento
<track>:<track kind="captions" src="/captions.vtt" srclang="it" label="Italiano">.
Perché convertire SRT in WebVTT
Un file .srt si sincronizza benissimo in un editor desktop, ma non fa nulla in un browser. Convertirlo in WebVTT riguarda quasi sempre uno di questi motivi:
- Motivo: stai aggiungendo sottotitoli a un elemento
<video>autoospitato e hai bisogno di un formato che il tag HTML5<track>capisca davvero. - Motivo: devi soddisfare un requisito di accessibilità (come il criterio sui sottotitoli del WCAG 2.1) e hai bisogno di sottotitoli conformi allo standard, non di un formato che i browser ignorano in silenzio.
- Motivo: la tua piattaforma video, il tuo CMS o il player di screencast del tuo sito di documentazione accetta solo caricamenti
.vtt. - Motivo: hai ricevuto file
.srtda un editor, un freelance o un fornitore di sottotitolazione e devi consegnare a uno sviluppatore qualcosa pronto da inserire. - Motivo: stai migrando una videoteca da una piattaforma che esportava SRT a un player personalizzato costruito attorno ai sottotitoli nativi del browser.
- Motivo: vuoi risolvere il problema senza installare ffmpeg o scrivere uno script di conversione una tantum per un singolo file.
Prima e dopo: un esempio reale
Un breve file SRT di tre blocchi, con timecode con virgola e numeri sequenziali, convertito con Rimuovi etichette dell'oratore e Rimuovi tag di formattazione entrambi disattivati (lo stato predefinito in questa pagina, dato che non c'è nulla da rimuovere per produrre un WebVTT valido):
1 00:00:01,200 --> 00:00:04,000 Bentornati, oggi parliamo dei numeri del terzo trimestre. 2 00:00:04,300 --> 00:00:07,900 Grazie per avermi invitato. Entriamo subito nel merito. 3 00:00:08,100 --> 00:00:11,500 I ricavi sono aumentati dell'otto percento su base annua.
WEBVTT 1 00:00:01.200 --> 00:00:04.000 Bentornati, oggi parliamo dei numeri del terzo trimestre. 2 00:00:04.300 --> 00:00:07.900 Grazie per avermi invitato. Entriamo subito nel merito. 3 00:00:08.100 --> 00:00:11.500 I ricavi sono aumentati dell'otto percento su base annua.
Il testo dei sottotitoli, la sincronizzazione e persino i numeri dei blocchi restano invariati. Viene aggiunta solo l'intestazione WEBVTT e ogni virgola prima dei millisecondi diventa un punto, esattamente le due modifiche di cui un browser ha bisogno per accettare il file.
Prima e dopo
Input SRT: 1 00:00:09,400 --> 00:00:12,900 I ricavi sono aumentati dell'otto percento. Output VTT: WEBVTT 1 00:00:09.400 --> 00:00:12.900 I ricavi sono aumentati dell'otto percento.
Perché è importante per gli sviluppatori web
Un video accessibile e sottotitolato è sia un requisito di usabilità che di conformità per la maggior parte dei siti pubblici (il criterio di successo 1.2.2 del WCAG 2.1 richiede sottotitoli per i contenuti multimediali pre-registrati), e l'elemento <track> è il modo standard per fornirli senza una piattaforma video di terze parti. Se la tua pipeline di editing (o un freelance) ti consegna solo file .srt, convertirli qui ti restituisce in pochi secondi un asset WebVTT pronto da inserire, senza installare ffmpeg o scrivere uno script di conversione.
Elaborato da te, non sui nostri server
Dato che si tratta di un riformato di testo semplice, nessun file multimediale viene mai toccato o caricato, solo il testo dei sottotitoli, e unicamente dentro la tua scheda del browser. Conta tanto per un video demo interno di prodotto quanto per una pagina di marketing pubblica.
Usare il risultato in un elemento <track>
Una volta scaricato il file convertito, aggiungilo al tuo markup <video> con un elemento figlio <track>:
<video controls>
<source src="demo.mp4" type="video/mp4">
<track
kind="captions"
src="/captions.vtt"
srclang="it"
label="Italiano"
default>
</video>L'attributo default indica al browser di attivare automaticamente questa traccia; omettilo se offri più tracce in lingue diverse e vuoi che sia lo spettatore a scegliere. I browser validano l'intestazione WEBVTT in modo rigoroso: un'intestazione mancante o scritta male è il motivo più comune per cui i sottotitoli non appaiono in silenzio anche quando il resto del file è ben formato.
Per chi è pensato questo convertitore
Sviluppatori front-end e full-stack che aggiungono sottotitoli a un lettore video autoospitato sono il pubblico principale, ma anche i team di produzione video che consegnano asset a uno sviluppatore lo usano per fornire qualcosa garantito funzionare, invece di lasciare la conversione del formato come un compito aperto sul tavolo di qualcun altro. È altrettanto utile per siti di documentazione open source che incorporano screencast, team di strumenti interni che sottotitolano video di formazione per conformità di accessibilità, e chiunque stia migrando una videoteca da una piattaforma che esportava SRT a un player personalizzato che si aspetta sottotitoli nativi del browser.
Cosa conserva e cosa rimuove questo convertitore
Conservato:
- Ogni parola del testo del dialogo, esattamente come scritta, inclusi eventuali errori di battitura del file originale.
- La sincronizzazione con precisione al millisecondo di ogni blocco, trasferita esattamente.
- Un blocco per sottotitolo, nell'ordine originale, con i numeri dei blocchi rinumerati in sequenza a partire da 1.
- Eventuali prefissi di chi parla o tag inline nel testo del blocco, a meno che tu attivi Rimuovi etichette dell'oratore o Rimuovi tag di formattazione.
Modificato o rimosso:
- La virgola prima dei millisecondi diventa un punto in ogni timecode, poiché il WebVTT richiede
00:00:04.000, non il00:00:04,000dell'SRT. - Viene aggiunta una riga di intestazione
WEBVTTin testa al file, poiché il WebVTT la richiede e l'SRT non ne ha una. - I prefissi di chi parla in testo semplice come
PARLANTE 1:, ma solo se Rimuovi etichette dell'oratore è attivo; per impostazione predefinita restano al loro posto. - I tag di formattazione come
<i>o<b>, ma solo se Rimuovi tag di formattazione è attivo; per impostazione predefinita restano al loro posto.
Problemi comuni e come risolverli
- Il browser non mostra ancora i sottotitoli dopo la conversione: verifica che il badge del formato sopra il convertitore indicasse davvero SRT prima della conversione; un incolla molto troncato può rompere il rilevamento dei blocchi e produrre un output vuoto o malformato.
- I tag
<i>o<b>appaiono ancora come testo letterale nei sottotitoli: è normale, Rimuovi tag di formattazione è disattivato per impostazione predefinita in questa pagina perché il WebVTT supporta nativamente quei tag; attivalo solo se preferisci il testo semplice. - Nomi come
PARLANTE 1:passano direttamente nell'output VTT: attiva Rimuovi etichette dell'oratore se preferisci che non ci siano; vengono conservati per impostazione predefinita perché questo convertitore presume che tu voglia un riformato strutturale fedele, non una modifica del contenuto. - L'output mostra ancora una virgola invece di un punto prima dei millisecondi: controlla di aver scaricato davvero l'output
.vtte non una copia del file.srtoriginale; il badge del formato e l'etichetta dell'output sopra il convertitore confermano quale stai guardando. - I sottotitoli non appaiono anche se il file sembra corretto: apri il file
.vttin un editor di testo e verifica che la primissima riga sia esattamenteWEBVTT, senza nulla prima, nemmeno un byte-order-mark o una riga vuota; i browser rifiutano il file in silenzio se quella riga non è la prima. - Le lettere accentate o il testo non in inglese diventano caratteri confusi come
énel file convertito: l'.srtdi origine non è stato salvato come UTF-8; riesportalo o risalvalo come UTF-8 prima di convertire, dato che il WebVTT, come l'SRT, presume testo in UTF-8.
Cosa non cambia nella conversione
Il testo del dialogo e la sincronizzazione con precisione al millisecondo restano esattamente come scritti. È un riformato strutturale, non una nuova trascrizione. Se il tuo SRT originale ha errori di battitura, quegli stessi errori saranno anche nell'output VTT; questo strumento corregge la conformità del formato, non la precisione del contenuto. Se vuoi anche pulire le etichette di chi parla o i tag di stile inline mentre converti, gli interruttori Rimuovi etichette dell'oratore e Rimuovi tag di formattazione qui sopra si applicano al testo del blocco prima che venga riscritto in sintassi WebVTT, così puoi combinare la conversione del formato con la pulizia del contenuto in un unico passaggio invece di eseguire due strumenti separati.
Domande frequenti
Perché il mio browser rifiuta un file .srt in un elemento <track>?
L'elemento <track> di HTML5 richiede specificamente il WebVTT. I browser non analizzano nativamente l'SRT per la sottotitolazione video. Convertire in .vtt è indispensabile per poter usare del tutto l'API nativa dei sottotitoli.
Cosa aggiunge esattamente il convertitore per renderlo un WebVTT valido?
Antepone la riga di intestazione WEBVTT obbligatoria, cambia il separatore dei millisecondi di ogni timecode da virgola a punto, e rinumera gli identificativi dei blocchi: le tre cose che mancano a un SRT perché un browser accetti il file.
Posso aggiungere posizionamento o stili ai blocchi dopo la conversione?
Sì, questo strumento produce un output di testo WebVTT pulito e conforme allo standard, che puoi successivamente modificare a mano per aggiungere impostazioni del blocco (come align o position) o tag voce <v>, dato che la struttura di base è già valida.
I sottotitoli resteranno sincronizzati correttamente dopo la conversione?
Sì, la sincronizzazione viene conservata al millisecondo; cambiano solo il carattere separatore e l'intestazione, mai i valori effettivi dei timestamp.
Funziona con i sottotitoli esportati da Premiere o DaVinci Resolve?
Sì. Entrambi esportano SRT standard, che questo analizzatore legge in modo nativo indipendentemente dal software che ha generato il file.
Qualche browser supporta davvero l'.srt direttamente, anche se non è conforme allo standard?
Chrome e Firefox hanno aggiunto un supporto non standard per l'SRT tramite l'API TextTrack, ma è incoerente e non garantito tra browser e versioni diverse. La specifica HTML5 richiede solo il WebVTT, quindi convertire in .vtt è l'unico modo per garantire che i sottotitoli vengano renderizzati ovunque.