Przejdź do treści
SubtitleMatrix

Konwerter napisów SSA na VTT

Konwersja formatówSubStation Alpha (SSA)
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.

Powiązane narzędzia