Napisy WebVTT (.vtt)

W3C Standardowy

Web Video Text Tracks (WebVTT) to oficjalny standard internetowy W3C przeznaczony do napisywania materiałów, napisów rozszerzonych i opisów rozdziałów, zintegrowany natywnie z elementami wideo HTML5 (<track>) oraz nowoczesnymi transmisjami strumieniowymi na żywo HTTP (HLS).

Konwertuj SRT na VTT

Darmowy konwerter z SRT na VTT w przeglądarce. Konwertuj pliki natychmiast na swoim urządzeniu.

Inspekcja i metadane

Systemy operacyjne i analizatory plików identyfikują pliki WebVTT, sprawdzając początkową sekwencję bajtów binarnych:

Wybierz lub upuść pliki tutaj

Konwersja w 100% prywatna w przeglądarce - pliki nigdy nie opuszczają Twojego urządzenia

lub wklej Ctrl+V
Gwarancja prywatności bez przesyłania danych do sieci: 0 bajtów przesłanych na zewnętrzne serwery. Całe przetwarzanie odbyło się lokalnie w piaskownicy przeglądarki.

Podpis nagłówka na poziomie bajtów (Magic Bytes)

Systemy operacyjne i analizatory plików identyfikują pliki WebVTT, sprawdzając początkową sekwencję bajtów binarnych:

PODPIS HEX (OFFSET 0):

57 45 42 56 54 54

REPREZENTACJA ASCII: WEBVTT

Normalizacja: W3C WebVTT Recommendation

Specyfikacja techniczna

Architektura konteneraUTF-8 text file starting with 'WEBVTT' signature, followed by optional STYLE and NOTE blocks and sequential cue blocks
KompresjaUncompressed plain text (typically compressed over HTTP via Gzip or Brotli)
Kolejność bajtów (Endianness)UTF-8 text stream
Przestrzenie kolorówFull CSS Color Module Level 4 support in cue styles
Kanały i strukturaTimecoded cues, speech recognition confidence, CSS styling, and screen position settings
Maks. wymiaryUnbounded sequential cues
PrzezroczystośćFull CSS opacity and alpha transparency supported via '::cue' pseudo-element
Streaming i progresywne ładowanieNative streaming in HTML5 <video> elements and HLS / DASH live video manifests

Techniczna macierz porównawcza: WebVTT a konkurencja

Atrybut technicznyWebVTT (Bieżący)SRTASSSUB
Integracja z webem HTML5100% natywny standard (<track>)Wymaga konwersji JSWymaga WebAssemblyWymaga konwersji
Stylizacja CSSPełna natywna stylizacja CSS (::cue)Tylko podstawowe znaczniki HTMLWłasne znaczniki nadpisująceBrak
Streaming HLS / DASHUniwersalny standard transmisji strumieniowychObsługiwany poprzez multipleksowanieOgraniczone wsparcie streaminguBrak
Wymóg nagłówkaŚcisły magiczny tekst 'WEBVTT' w linii 1Brak wymogu nagłówkaSekcja [Script Info]Brak wymogu nagłówka

Typowe tryby uszkodzeń i przewodnik odzyskiwania szesnastkowego

Błąd konsoli przeglądarki: 'Malformed WebVTT file: Missing WEBVTT signature'.

Główna przyczyna: Brak ciągu znaków 'WEBVTT' w linii 1 lub puste linie przed nagłówkiem.

Odzyskiwanie: Dodaj 'WEBVTT\n\n' na samej górze pliku za pomocą konwertera napisów File2File.

Analiza bezpieczeństwa i wektory ataku na parser

Analizatory WebVTT w przeglądarkach internetowych przetwarzam niezaufane wskazówki, co może prowadzić do ataków typu Cross-Site Scripting (XSS), jeśli zostaną zrenderowane bez oczyszczania w drzewie DOM.

Znane wektory ataku

  • Iniekcja XSS poprzez nieoczyszczoną zawartość HTML wskazówek wstawianą do DOM odtwarzacza wideo.
  • Atak typu Server-Side Request Forgery (SSRF) podczas automatycznego generowania miniaturek napisów po stronie serwera.
  • Odmowa usługi (DoS) poprzez wadliwe selektory CSS wskazówek.

Najlepsze praktyki obronne:

Pochodzenie historyczne i kamienie milowe

2019W3C oficjalnie awansuje standard WebVTT: The Web Video Text Tracks Format do statusu Proponowanej Rekomendacji.
2011Zmieniono nazwę z WebSRT na WebVTT, aby ustanowić odrębny standard W3C oddzielony od klasycznego SubRip.
2010WHATWG wprowadza WebVTT w celu rozwiązania problemu natywnych napisy dla znacznika <video> w HTML5.

Główne zalety

  • Natywny standard internetowy HTML5: obsługiwany bezpośrednio przez wszystkie przeglądarki w elemencie <track> bez bibliotek zewnętrznych.
  • Bogate wsparcie dla stylizacji CSS: dostosowywanie kolorów, czcionek, tła i pozycji za pomocą natywnego pseudoelementu CSS '::cue'.
  • Najwyższej klasy wsparcie dla transmisji na żywo: zintegrowane z manifestami strumieniowania Apple HLS i MPEG-DASH dla napisów telewizyjnych.

Ograniczenia techniczne i wady

  • Ścisły wymóg nagłówka: plik musi zaczynać się od dokładnego tekstu 'WEBVTT' w pierwszej linii, w przeciwnym razie przeglądarki go odrzucą.
  • Separator milisekund w postaci kropki ('00:01:20.500') wymaga konwersji ze starszych plików SRT rozdzielanych przecinkami.
  • Starsze odtwarzacze sprzętowe niedziałające w przeglądarkach (takie jak tanie pudełka multimedialne USB) często nie mają natywnego wsparcia dla WebVTT.

Ciekawe informacje techniczne

  • Każdy prawidłowy plik WebVTT musi zaczynać się od dokładnego słowa 'WEBVTT' w pierwszej linii; cokolwiek innego powoduje, że przeglądarki ignorują plik.
  • WebVTT pierwotnie nazywał się 'WebSRT', ponieważ został celowo zaprojektowany tak, aby wyglądać niemal identycznie jak klasyczne napisy SRT.
  • WebVTT może być również używany do rozdziałów wideo i interaktywnych etykiet miniaturek podczas najeżdżania kursorem na paski przewijania wideo.

Często zadawane pytania techniczne

Do czego służy WebVTT?

WebVTT to oficjalny standard internetowy służący do dodawania napisów dialogowych, tłumaczeń, rozdziałów i opisów do elementów <video> HTML5 na stronach internetowych.

Jak mogę przekonwertować napisy SRT na WebVTT?

Możesz przekonwertować pliki SRT na czyste pliki WebVTT jednym kliknięciem za pomocą File2File.app bezpośrednio w przeglądarce.

Dlaczego moje napisy WebVTT nie chcą się wyświetlić w przeglądarce?

Upewnij się, że Twój plik zaczyna się od 'WEBVTT' w linii 1, ma pustą linię zaraz po niej, a Twój serwer WWW obsługuje go z nagłówkiem 'Content-Type: text/vtt'.