Przejdź do treści
SubtitleMatrix

Format napisów SMI

Co potrafi wyrazić ten format

Formatowanie tekstu
Pogrubienie i kursywa
Pozycja na ekranie
Tak
Czasy karaoke
Nie
Podziały wierszy w bloku
Tak
Oś czasu
Czas początku i końca dla każdego bloku
Dokładność czasów
1 ms
Czasy zapisane jako numery klatek
Nie
Tekst od prawej do lewej
Tak

Przykłady

Typowy plik SAMI i to, co z niego odczytujemy

Plik

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial; }
.ENCC { Name: English; lang: en-US; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P Class=ENCC>Hello there.
<SYNC Start=3000>
<P Class=ENCC>&nbsp;
<SYNC Start=3500>
<P Class=ENCC>How are you?<br>Fine, thanks.
<SYNC Start=6000>
<P Class=ENCC>&nbsp;
</BODY>
</SAMI>

Co zawiera

2 cues, 3 lines of text

  Start=1000  =  00:00:01.000 → 00:00:03.000
    Hello there.
    [Class=ENCC]
  Start=3500  =  00:00:03.500 → 00:00:06.000
    How are you?
    Fine, thanks.
    [Class=ENCC]

Outside the cues:
  head       a <STYLE> block with CSS for the paragraphs, kept as it came in
  cue ends   the next <SYNC> tag — a SAMI file writes no end time of its own
  clearing   a <P>&nbsp; block blanks the screen; the two here are kept as clearing blocks, not turned into cues

Prawa strona nie jest przekonwertowanym plikiem — to, co ta strona odczytuje z lewej strony i od czego zaczyna się każda konwersja tego pliku.

Niechlujny plik SAMI i to, co nadal da się z niego odczytać

Plik

<SAMI>
<BODY>
<SYNC Start=abc>
<P Class=ENCC>this block's start cannot be read
<SYNC Start=2000>
<SYNC Start=4000>
<P>no attributes here<br>second line
<SYNC Start="6000">
some loose text before any P
</BODY>
</SAMI>

Co zawiera

3 cues, 3 lines of text

  Start=2000  =  00:00:02.000 → 00:00:04.000
    (no text)
  Start=4000  =  00:00:04.000 → 00:00:06.000
    no attributes here
    second line
  Start=6000  =  00:00:06.000 → 00:00:08.000
    some loose text before any P

Outside the cues:
  head       no <STYLE> block and no <TITLE> — just the <SAMI> and <BODY> tags
  cue ends   the next <SYNC> tag; the last cue has none after it, so its end time was given a default
  loose text text between two <SYNC> tags that belongs to no <P> is kept and attached to the cue open at that point

Reported while reading — repaired or skipped, never silently:
  1 × SYNC blocks whose start time could not be read (they were skipped)
  1 × the last cue has no following timestamp, so its end time was generated

Prawdziwe pliki przychodzą z BOM, windowsowymi końcami wierszy, zbłąkaną linią przed znacznikiem czasu albo czasem, którego nie da się odczytać. Nic nie rzuca wyjątku: to, czego nie da się zrozumieć, jest zgłaszane, a nie po cichu wyrzucane.

Konwertuj SAMI (SMI) na inny format

Każda z nich działa w całości w Twojej przeglądarce. Etykiety mówią, ile kosztuje dany kierunek, zanim go otworzysz.

SMI → LRC: traci znaczniki czasu, styl, pozycję, precyzję i treść formatu.
  • Czasy
  • Formatowanie
  • Pozycjonowanie
  • Dokładność
  • Treści specyficzne dla formatu
SMI → TXT: traci znaczniki czasu, styl, pozycję, podziały wierszy i treść formatu.
  • Czasy
  • Formatowanie
  • Pozycjonowanie
  • Podziały wierszy
  • Treści specyficzne dla formatu

Konwersja do tego formatu

SAMI (SMI) to jeden z formatów napisów, które obsługuje ta strona, a ta strona jest jego opisem: co potrafi przechować, czego nie potrafi i gdzie przekonwertować go dalej.

Powyższa tabela mówi wszystko — nie ma ukrytej listy funkcji. Gdy wiersz mówi „nie”, dokładnie to ginie przy konwersji do SMI, a każda podlinkowana niżej strona konwersji mówi o tym, zanim otworzysz plik.

Każda z tych konwersji odbywa się w twojej przeglądarce. Nic nie jest wysyłane i nie potrzebujesz konta, co ma znaczenie przy materiale objętym NDA, dokumentacją pacjenta albo embargiem emisyjnym.

Częste pytania

Czym jest plik SMI?

To SAMI firmy Microsoft: napisy zapisane jako fragment HTML, w którym każdy znacznik SYNC Start mówi, co jest na ekranie od danego momentu. Czytał go Windows Media Player oraz narzędzia DVD i emisyjne z tamtych lat, a pliki SMI wciąż pojawiają się w materiałach archiwalnych.

Czy SMI przechowuje styl?

Częściowo, i to w tekście, a nie obok niego: wyróżnienia i kolor są częścią bloku (b, i, u, font color). Sam blok nie deklaruje rozmiaru czcionki, obrysu ani marginesu. Plik SAMI może też nieść CSS dla akapitów w bloku STYLE w nagłówku — tam zwykle zapisany jest kanał, jego czcionka i kolor — i wtedy o wyglądzie decyduje ta reguła, a nie strona wyświetlająca. Plik, który to ma, zachowuje to; przy konwersji do SMI powstaje niewielki domyślny blok STYLE, a akapity wychodzą jako P bez atrybutu Class.

Czy każdy blok SMI ma zapisany początek i koniec?

Plik SAMI zapisuje tylko początek: koniec bloku wyznacza następny znacznik SYNC. Model bloku ma oba końce, a moment czytamy jako Start=4126, czyli z dokładnością do milisekundy — liczby nie zaokrągla się, więc blok może być krótki, długi albo nachodzić na następny.

Do jakiego formatu najlepiej przekonwertować SMI?

Nic na tej stronie nie przyjmie wszystkiego, co trzyma plik SAMI, więc nie ma kierunku bez kosztu — każda strona konwersji wymienia własną listę strat. Wybierz format docelowy według tego, z którą listą potrafisz żyć, a nie według tego, który format widziałeś najczęściej.

Co plik SAMI trzyma poza swoimi blokami?

Blok STYLE w nagłówku z CSS dla akapitów — dla pliku napisów to zwykle wygląd kanału: czcionka, rozmiar, kolor i miejsce tekstu na ekranie — a do tego element TITLE i atrybuty każdego akapitu, takie jak Class=ENCC, który wskazuje akapitowi jedną z tych reguł. Nic z tego nie należy do modelu bloku, więc format bez odpowiednika nie może tego przyjąć i każda strona konwersji wymienia to jako stratę.