SRT vs VTT vs ASS: którego formatu napisów użyć w 2026 roku?
SRT, VTT i ASS porównane: co niesie każdy format, gdzie każdy z nich się psuje i którego użyć do YouTube, webu, stylizowanych napisów i archiwizacji wideo.
SRT to właściwa odpowiedź w mniej więcej dziewięciu przypadkach z dziesięciu. VTT jest odpowiedzią, gdy plik odtwarza strona internetowa. ASS jest odpowiedzią, gdy napisy są zaprojektowane, a nie tylko wyświetlane. Wszystko inne w tym porównaniu to szczegóły — ale to właśnie w szczegółach pliki są odrzucane, stylizacja bezgłośnie znika, a czasowanie przesuwa się o błąd zaokrąglenia.
Poniżej: co faktycznie zawiera każdy format i w którym konkretnie momencie każdy z nich przestaje wystarczać.
Porównanie w jednej tabeli
| SRT | VTT | ASS | |
|---|---|---|---|
| Pełna nazwa | SubRip | WebVTT | Advanced SubStation Alpha |
| Formalna specyfikacja | Nie, tylko konwencja | Tak, W3C | Nie, dokumentacja społeczności |
| Znacznik czasu | 00:00:01,000 (przecinek) | 00:00:01.000 (kropka) | 0:00:01.00 (setne sekundy) |
| Stylizacja | Podstawowe tagi, niekonsekwentnie wspierane | CSS przez ::cue | Pełna tabela stylów plus nadpisania dla poszczególnych linijek |
| Pozycjonowanie | Nie | Tak, ustawienia linijek | Tak, z dokładnością do piksela |
| Karaoke / czasowanie słów | Nie | Nie | Tak |
| Wbudowane albo dołączone fonty | Nie | Nie | Tak, przy muxowaniu do MKV |
Element track w webie | Nie | Tak, wymagany | Nie |
| YouTube, Vimeo, LinkedIn | Tak | Tak | Stylizacja nierenderowana |
| VLC, mpv, centra multimedialne | Tak | Tak | Tak |
| Typowe użycie | Wszystko | Odtwarzacze internetowe | Stylizowane napisy, anime, karaoke |
SRT: format, który działa wszędzie
Linijka SRT to cztery wiersze — numer, przedział czasu, tekst i pusta linia:
1
00:00:01,000 --> 00:00:04,120
This is the first subtitle.
To jest cały format. Nie istnieje formalna specyfikacja; SRT to konwencja, którą wszyscy zgodnie wdrożyli, i właśnie dlatego działa wszędzie.
Ta konwencja ma miękkie krawędzie. Większość odtwarzaczy honoruje <i>, <b> i <u> w tekście, a wiele honoruje tag font z atrybutem koloru, ale nic z tego nie jest gwarantowane, a odtwarzacz, który nie rozumie jakiegoś tagu, może pokazać go jako zwykły tekst. Kodowanie to druga klasyczna pułapka: SRT powstał, zanim istniała jakakolwiek reguła kodowania, więc plik zapisany jako Windows-1254 albo Latin-1 wyświetla znaki z akcentami i spoza alfabetu łacińskiego jako bezsensowne znaki w odtwarzaczu, który zakłada UTF-8. Zapisz SRT jako UTF-8, i większość problemów typu „moje napisy są uszkodzone” po prostu nie wystąpi.
Użyj SRT, gdy wgrywasz plik na platformę, wysyłasz go do klienta albo po prostu chcesz, żeby otworzył się poprawnie za piętnaście lat.
VTT: SRT dla stron internetowych, z polem do rozwoju
WebVTT to format, którego wymaga element track w HTML5. Jeśli napisy odtwarzają się w stronie internetowej, przeglądarka chce VTT i niczego innego.
WEBVTT
intro
00:00:01.000 --> 00:00:04.120 line:90% align:center
This is the first subtitle.
Warto zapamiętać cztery różnice względem SRT:
- Nagłówek. Plik musi zaczynać się od
WEBVTT. Plik bez tego jest odrzucany od razu, i to najczęstszy powód, dla którego przemianowany SRT nie działa w przeglądarce. - Interpunkcja. Milisekundy oddziela kropka, nie przecinek. Zmiana rozszerzenia
.srtna.vttbez poprawienia tego daje plik, który się wczytuje i nie pokazuje niczego. - Ustawienia linijek. Każda linijka może nieść
line,position,align,sizeivertical, by przesunąć tekst z dolnego środka — przydatne, gdy to miejsce zajmuje wypalony tekst albo logo. - Prawdziwa stylizacja i struktura. VTT wspiera bloki
STYLEz selektorem CSS::cue, komentarzeNOTE, definicjeREGIONi opcjonalne nazwy linijek. Jest też zawsze w UTF-8, co całkowicie usuwa pułapkę kodowania.
Użyj VTT, gdy odtwarzaczem jest strona internetowa albo gdy specyfikacja dostawy wymaga WebVTT z nazwy. Niektóre platformy — zwłaszcza hosty kursów online — wymagają go dokładnie pod tą nazwą.
ASS: kiedy napisy są elementem projektu
Advanced SubStation Alpha to zupełnie inny rodzaj pliku. SRT i VTT opisują co jest powiedziane i kiedy. ASS opisuje jak to jest narysowane.
Plik ASS ma sekcje. [Script Info] definiuje wirtualne płótno za pomocą PlayResX i PlayResY, dzięki czemu pozycje i rozmiary fontów zostają proporcjonalne niezależnie od rozdzielczości wideo. [V4+ Styles] przechowuje nazwane style z fontem, rozmiarem, kolorem głównym i obrysu, stylem obramowania, grubością obrysu i cienia, wyrównaniem i marginesami. [Events] przechowuje linie dialogowe, z których każda może nadpisać cokolwiek w swoim stylu wprost w tekście: \pos dla precyzyjnego umieszczenia, \an dla zakotwiczenia, \fad dla przenikania, \t dla animowanych przekształceń i \k dla czasowania karaoke, słowo po słowie.
Jeden szczegół łapie każdego przy pierwszym razie: kolory w ASS zapisuje się jako &HBBGGRR, w odwrotnej kolejności bajtów. Kolor, który wygląda jak standardowy hex RGB, nim nie jest — wklej kolor marki bez zmian i dostaniesz jego bliźniaka z zamienionymi kanałami.
To też format, który umożliwia stylizowaną dostawę wielojęzyczną. MKV może przechowywać jedną ścieżkę ASS na język i dołączony plik fontu, więc stylizacja renderuje się identycznie na komputerze, który nigdy wcześniej nie widział tego fontu.
Użyj ASS, gdy potrzebujesz karaoke albo podświetlania na poziomie słowa, napisów umieszczonych gdzie indziej niż dolny środek, typografii dla poszczególnych języków, albo jednego pliku, który zachowuje kilka stylizowanych ścieżek językowych.
Co przetrwa konwersję
Konwersja między tymi formatami jest bezpieczna tylko w jedną stronę.
| Konwersja | Wynik |
|---|---|
| SRT do VTT | Praktycznie bezstratna — nagłówek i zmiana interpunkcji |
| VTT do SRT | Tekst i czasowanie zostają; pozycjonowanie, regiony i CSS są odrzucane |
| ASS do SRT | Tekst i czasowanie zostają; cała stylizacja, pozycjonowanie i karaoke są utracone |
| ASS do VTT | Tekst i czasowanie zostają; część pozycjonowania da się przybliżyć |
| SRT do ASS | Działa, ale daje prosty domyślny styl — dodajesz kontener, nie design |
Praktyczna zasada: zachowaj najbogatszą wersję, jaką masz, jako plik master, i generuj z niej prostsze wersje. Pójście w drugą stronę niczego nie odtworzy.
Który format więc naprawdę wybrać?
| Dokąd trafia | Format | Dlaczego |
|---|---|---|
| YouTube, Vimeo, LinkedIn | SRT | Uniwersalny, a odtwarzacz i tak przestylizowuje wszystko |
| Strona internetowa z odtwarzaczem HTML5 | VTT | Wymagany przez element track |
| Platformy kursów online | VTT | Zwykle wymagany z nazwy w specyfikacji wgrywania |
| Tłumacz albo klient | SRT | Otwiera się w każdym narzędziu do napisów na świecie |
| Archiwizacja albo lokalne odtwarzanie | ASS w MKV | Zachowuje stylizację i każdą ścieżkę językową w jednym pliku |
| TikTok, Reels, Shorts | Brak — wypal napisy | Te platformy w ogóle nie czytają plików z napisami |
Ten ostatni wiersz to ten, który ludzie odkrywają najpóźniej. Wertykalne platformy społecznościowe nie mają wgrywania napisów w ogóle; napisy są tam pikselami w wideo, co jest zadaniem renderowania, a nie formatu pliku. Wypalanie napisów w wideo opisuje, jak to zrobić bez zepsucia jakości.
Jak to wygląda w Sablate
Sablate zapisuje .srt, .vtt i .txt w każdym planie, a .ass plus .mkv z napisami w osobnej ścieżce w planie Pro. Warto wiedzieć, że stylizacja, którą budujesz w panelu stylu edytora, nie jest przybliżeniem podglądowym: eksport .ass, wypalone .mp4 i ścieżki w .mkv są renderowane przez libass z tej samej definicji stylu, więc wszystkie trzy wyniki dokładnie się ze sobą zgadzają.
Jeśli produkujesz kilka języków z jednego nagrania, decyzja o formacie łączy się z decyzją o sposobie dostawy — proces pracy z wieloma językami opisuje obie razem. Pro to jedna płatność $29; cennik ma pełny rozkład tego, co obejmuje.
W skrócie
Wysyłaj SRT, jeśli nic konkretnego nie wymaga inaczej. Wysyłaj VTT, gdy przeglądarka albo platforma kursowa prosi o niego z nazwy. Sięgnij po ASS, gdy napisy są zaprojektowane — karaoke, umiejscowienie, typografia dla poszczególnych języków — i trzymaj ten plik ASS jako swój master, bo nic, na co go skonwertujesz, nie da się skonwertować z powrotem.