Wróć do bloga

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.

11 września 2026
Sablate Team

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

SRTVTTASS
Pełna nazwaSubRipWebVTTAdvanced SubStation Alpha
Formalna specyfikacjaNie, tylko konwencjaTak, W3CNie, dokumentacja społeczności
Znacznik czasu00:00:01,000 (przecinek)00:00:01.000 (kropka)0:00:01.00 (setne sekundy)
StylizacjaPodstawowe tagi, niekonsekwentnie wspieraneCSS przez ::cuePełna tabela stylów plus nadpisania dla poszczególnych linijek
PozycjonowanieNieTak, ustawienia linijekTak, z dokładnością do piksela
Karaoke / czasowanie słówNieNieTak
Wbudowane albo dołączone fontyNieNieTak, przy muxowaniu do MKV
Element track w webieNieTak, wymaganyNie
YouTube, Vimeo, LinkedInTakTakStylizacja nierenderowana
VLC, mpv, centra multimedialneTakTakTak
Typowe użycieWszystkoOdtwarzacze internetoweStylizowane 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 .srt na .vtt bez poprawienia tego daje plik, który się wczytuje i nie pokazuje niczego.
  • Ustawienia linijek. Każda linijka może nieść line, position, align, size i vertical, by przesunąć tekst z dolnego środka — przydatne, gdy to miejsce zajmuje wypalony tekst albo logo.
  • Prawdziwa stylizacja i struktura. VTT wspiera bloki STYLE z selektorem CSS ::cue, komentarze NOTE, definicje REGION i 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ę.

KonwersjaWynik
SRT do VTTPraktycznie bezstratna — nagłówek i zmiana interpunkcji
VTT do SRTTekst i czasowanie zostają; pozycjonowanie, regiony i CSS są odrzucane
ASS do SRTTekst i czasowanie zostają; cała stylizacja, pozycjonowanie i karaoke są utracone
ASS do VTTTekst i czasowanie zostają; część pozycjonowania da się przybliżyć
SRT do ASSDział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 trafiaFormatDlaczego
YouTube, Vimeo, LinkedInSRTUniwersalny, a odtwarzacz i tak przestylizowuje wszystko
Strona internetowa z odtwarzaczem HTML5VTTWymagany przez element track
Platformy kursów onlineVTTZwykle wymagany z nazwy w specyfikacji wgrywania
Tłumacz albo klientSRTOtwiera się w każdym narzędziu do napisów na świecie
Archiwizacja albo lokalne odtwarzanieASS w MKVZachowuje stylizację i każdą ścieżkę językową w jednym pliku
TikTok, Reels, ShortsBrak — wypal napisyTe 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.