Konwerter SRT na VTT

Wklej plik SRT albo przeciągnij go tutaj, a dostaniesz plik WebVTT do elementu HTML5 <track> i odtwarzaczy wideo w sieci. Konwersja działa w twojej przeglądarce, więc napisy nigdy nie opuszczają urządzenia.

Wklej tekst albo upuść tutaj plik .srt lub .vtt. Do 5 MB.

Wynik WebVTT

Zapisano jako plik .vtt.

Wklej napisy albo wybierz plik, a wersja WebVTT pojawi się tutaj.

Działa w przeglądarce. Nic nie jest przesyłane.

Zmień kierunek: VTT na SRT

Konwersja pliku SRT w czterech krokach.

Bez konta i bez przesyłania plików. Zamknij kartę, a nic nie zostanie zapisane.

  1. Wklej tekst SRT do pola albo upuść na nie plik .srt. Możesz też użyć przycisku „Wybierz plik”.
  2. Wersja WebVTT pojawia się w trakcie pisania, a pod nią widać liczbę napisów i wszystko, co warto sprawdzić.
  3. Skopiuj wynik albo pobierz go jako plik .vtt o nazwie pliku źródłowego.
  4. Umieść plik .vtt obok wideo i wskaż go w elemencie <track> albo w ustawieniach napisów swojego odtwarzacza.

Co się zmienia między SRT a WebVTT

Oba formaty przechowują listę napisów, każdy z czasem początku, czasem końca i tekstem, a czasy przenoszą się dokładnie. Różnice tkwią w szczegółach i konwerter zajmuje się każdą z nich:

  • Wiersz nagłówka. Plik WebVTT musi zaczynać się od WEBVTT. Pliki SRT zaczynają się od razu pierwszym napisem.
  • Kropka przed milisekundami. SRT zapisuje 00:01:02,500, a WebVTT 00:01:02.500. Czas jest ten sam.
  • Numery napisów stają się identyfikatorami. Każdy napis w SRT zaczyna się od numeru. W WebVTT wiersz nad czasem to opcjonalny identyfikator napisu, więc numery zostają, a odtwarzacze je pomijają.
  • Zostają tylko znaczniki, które rozumie WebVTT. <i>, <b> i <u> działają w obu formatach. Znaczniki <font> i kody pozycji, takie jak {\an8}, to konwencje SRT, których WebVTT nie obsługuje, więc usuwamy je, zachowując ich tekst.
  • Znaki zarezerwowane zostają poprzedzone sekwencją ucieczki. WebVTT traktuje & i < jako znaczniki, więc Tom & Jerry zapisujemy jako Tom &amp; Jerry. Odtwarzacze pokazują to normalnie.
before.srt
1
00:00:01,200 --> 00:00:03,900
<font color="yellow">Hi</font> & welcome back.

2
00:00:04,100 --> 00:00:06,500
{\an8}<i>Previously...</i>
after.vtt
WEBVTT

1
00:00:01.200 --> 00:00:03.900
Hi &amp; welcome back.

2
00:00:04.100 --> 00:00:06.500
<i>Previously...</i>

Gdzie potrzebujesz VTT zamiast SRT

Przeglądarki odtwarzają napisy tylko z jednego formatu tekstowego. Element HTML5 <track> przyjmuje plik WebVTT i nie czyta SRT, więc napisy do wideo na własnej stronie muszą być w .vtt:

index.html
<video controls src="talk.mp4">
  <track kind="captions" src="talk.vtt" srclang="en" label="English" default>
</video>
  • Serwuj plik z typem treści text/vtt, zarejestrowanym dla WebVTT. Niektórym serwerom trzeba dopiero wskazać rozszerzenie .vtt.
  • Jeśli plik .vtt leży w innej domenie niż strona, tamten serwer musi zezwalać na żądania z innych domen (CORS), a element <video> potrzebuje atrybutu crossorigin.
  • WebVTT to również format napisów w streamingu HLS, a odtwarzacze zbudowane na elemencie <video>, takie jak Video.js, go czytają.

Co daje WebVTT po konwersji

SRT nie ma formalnej specyfikacji; wyrósł z programu SubRip, który wyciągał napisy z wideo. WebVTT to specyfikacja W3C i potrafi rzeczy, których SRT nie potrafi. Ustawienia napisu podane po czasie końcowym decydują, gdzie napis się pojawi:

settings.vtt
WEBVTT

00:00:04.100 --> 00:00:06.500 line:0 align:start
Shown at the top, aligned left.

Ten napis wyświetli się u góry wideo i zostanie wyrównany do lewej. Pliki WebVTT mogą też zawierać komentarze NOTE, a napisy da się stylować w CSS przez selektor ::cue. Pełne porównanie znajdziesz w poradniku SRT a VTT.

Krótkie odpowiedzi.

Czy mój plik napisów jest przesyłany?

Nie. Konwersja działa w twojej przeglądarce. Wklejony tekst lub wybrany plik jest odczytywany na urządzeniu i nigdy nie trafia na serwer, a konta nie potrzebujesz.

Czy konwersja zmienia czasy?

Nie. Każdy czas początku i końca jest kopiowany co do milisekundy. Zmienia się tylko separator: z przecinka w SRT na kropkę w WebVTT.

Czy kursywa i pogrubienie przetrwają?

Tak. <i>, <b> i <u> są poprawne w obu formatach i zostają. Znaczniki koloru <font> oraz kody pozycji {\an8} są usuwane, bo WebVTT ich nie obsługuje; ich tekst zostaje.

Co dzieje się z numerami napisów z SRT?

Zostają jako identyfikatory napisów, czyli opcjonalny wiersz, na który WebVTT pozwala nad każdym czasem. Odtwarzacze ich nie wyświetlają.

Znaki diakrytyczne w moim pliku wyglądają źle. Dlaczego?

Pierwotny plik prawdopodobnie nie jest w UTF-8. Gdy wybrany plik nie jest poprawnym UTF-8, narzędzie odczytuje go jako Windows-1252, czyli dawniej typowe kodowanie tekstów zachodnioeuropejskich, i informuje o tym. Pobierany plik .vtt jest zawsze w UTF-8, tak jak wymaga tego WebVTT.

Czy jest limit rozmiaru?

Pliki do 5 MB. Pliki napisów to zwykły tekst, więc nawet napisy do pełnometrażowego filmu zwykle są znacznie mniejsze.

Nie masz jeszcze napisów? AutoCap wygeneruje je z twojego wideo.

Prześlij wideo po angielsku lub w jednym z 38 języków europejskich, a dostaniesz napisy z osobnym czasem dla każdego słowa. Popraw dowolne słowo, a potem wyeksportuj MP4 z wtopionymi napisami, renderowane w przeglądarce w jakości do 2K, albo pobierz pliki SRT i VTT w płatnym planie. Darmowy plan obejmuje 2 minuty miesięcznie.