Konwerter napisów SSA na VTT
Albo wklej tekst napisów
Co zmienia ta konwersja
4 rzeczy zostają pominięte albo wymagają decyzji
- Formatowanie
całe formatowanie poza pogrubieniem i kursywą (kolor, obrys, cień, marginesy)
- Pozycjonowanie
pozycjonowanie na ekranie (każdy blok wraca do domyślnego położenia)
- Karaoke
czasy karaoke (podświetlanie sylaba po sylabie)
- Treści specyficzne dla formatu
treść, którą format źródłowy trzyma poza blokami (bloki niebędące napisami, tekst nagłówka, ustawienia pojedynczych bloków, zakomentowane zdarzenia) — format docelowy nie ma dla niej miejsca
Ta lista pochodzi z macierzy możliwości tych dwóch formatów, a nie z konkretnego wczytanego pliku. Konkretny plik może stracić więcej, jeśli używa cech, które format dopuszcza, ale macierz ich nie modeluje.
Ta strona zamienia SSA w VTT. SSA to skrypt z tabelą stylów; WebVTT to format dla przeglądarek, z nagłówkiem WEBVTT i blokami czasu.
Wynik zachowuje słowa, czasy i wyróżnienia w tekście. Tabela [V4 Styles], pozycjonowanie i karaoke nie mają odpowiednika, a sekcje [Fonts] i [Graphics] nie mają gdzie się podziać.
Pliki idą po kolei w przeglądarce, można przerwać, a wynik wraca jako jeden ZIP.
Przykłady
Typowy plik SSA po konwersji do VTT
Wejście
[Script Info]
Title: Example SSA
ScriptType: v4.00
Collisions: Normal
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello there.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,{\i1}Italic{\i0} line.
Dialogue: Marked=0,0:00:09.00,0:00:12.00,Default,,0,0,0,,Two\Nlines
Wynik
WEBVTT
00:00:01.000 --> 00:00:04.000
Hello there.
00:00:05.000 --> 00:00:08.000
<i>Italic</i> line.
00:00:09.000 --> 00:00:12.000
Two
lines
W tym wyniku odrzucono: tabelę stylów, pozycjonowanie, karaoke i treści specyficzne dla formatu. Kursywa i pogrubienie zostają jako tagi, a reszta zgadza się linia po linii.
Ta sama konwersja na trudnym pliku
Wejście
[Script Info]
Title: Dirty SSA
ScriptType: v4.00
[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1
[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: Marked=0,0:00:00.00,0:00:01.00,Default,,0,0,0,,not a subtitle
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,{\b1}Bold{\b0} and {\u1}underlined{\u0}.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,A soft\nbreak and a {\p1}mystery{\p0} code.Wynik
WEBVTT
00:00:01.000 --> 00:00:04.000
<b>Bold</b> and <u>underlined</u>.
00:00:05.000 --> 00:00:08.000
A soft
break and a {\p1}mystery{\p0} code.
Tak wyglądają prawdziwe pliki – mieszane końce wierszy, zbłąkane spacje, puste pola. Porównaj z czystym przykładem powyżej, żeby zobaczyć, co parser wybacza.
Częste pytania
Które style z SSA przetrwają w VTT?
Wyróżnienia w tekście: <b>, <i>, <u> i <font color="…">. Tabela [V4 Styles] nie przechodzi – krój, rozmiar, obrys, cień i marginesy przepadają, a strona osadzająca napisy stylizuje je własnym CSS-em.
Co dzieje się z pozycją ekranową przy konwersji SSA do VTT?
\pos, \an i \move są odrzucane, bo VTT zna tylko ograniczony zestaw ustawień bloku, którego ten konwerter nie wypełnia; tekst trafia na domyślną pozycję odtwarzacza.
Co dzieje się z karaoke z SSA w pliku VTT?
Kody \k, \kf i \ko znikają wraz z taktowaniem, a sylaby zostają w tekście jako osobne fragmenty.
Co się dzieje z blokiem [Script Info] i resztą skryptu SSA w VTT?
Napisy powstają tylko z Dialogue:. [Script Info] z tytułem, tabela stylów, Comment: oraz [Fonts] i [Graphics] są odrzucane – VTT nie ma sekcji na osadzone pliki.
Jak wygląda wynik, gdy SSA zamienia się w VTT?
Jak WebVTT: nagłówek WEBVTT, potem bloki z czasem 00:00:04.130 --> 00:00:08.000 i tekstem; opcjonalny identyfikator bloku nie jest wypisywany.
Czy czasy z SSA są dokładne w pliku VTT?
Tak, co do milisekundy: 0:00:04.13 daje 00:00:04.130, bez zaokrągleń.
Jak w VTT wygląda blok SSA z dwiema liniami?
Jako dwie linie jedna pod drugą w jednym bloku; para zostaje zachowana.
Czy kolejność bloków SSA jest zachowana w VTT?
Tak, po sortowaniu rosnąco po czasie początku; oś czasu w wyniku jest uporządkowana.
Czy da się zamienić VTT z powrotem na SSA?
Tak, ale VTT do SSA odrzuca precyzję i treści specyficzne dla formatu, bo VTT nie przechowuje tabeli stylów.
Czy wynik VTT zachowuje kodowanie pliku SSA?
Nie – plik VTT powstały z SSA jest w UTF-8 bez BOM, z uniksowymi końcami wierszy, niezależnie od kodowania źródła.