Przejdź do treści
SubtitleMatrix

Konwerter napisów MicroDVD na LRC

Konwersja formatówMicroDVD (SUB)
Albo wklej tekst napisów

Opcje

W jakiej liczbie klatek na sekundę liczone są czasy. Na stronach formatów tego wymaga MicroDVD, bo zapisuje czasy jako numery klatek. Na stronach poświęconych liczbie klatek jest to stawka, według której zgrany był plik — wersja, dla której powstały napisy — a drugie pole na stronie przyjmuje liczbę klatek wideo, z którym napisy będą używane. Najczęstsze wartości to 23,976, 24, 25, 29,97, 30, 50, 59,94 i 60. Pomyłka przesuwa całą oś czasu, a na stronach poświęconych liczbie klatek przesuwa ją o współczynnik, a nie o stałą wartość.

Co zmienia ta konwersja

3 rzeczy zostają pominięte albo wymagają decyzji

  • Czasy

    czasy końca bloków (format docelowy zapisuje tylko, kiedy blok się zaczyna)

  • Liczba klatek

    źródło zapisuje czasy jako numery klatek — każdy znacznik czasu zależy od podanej liczby klatek na sekundę

  • Dokładność

    dokładność czasów — zegar wyniku jest grubszy, więc każdy znacznik czasu jest zaokrąglany do najbliższych 10 ms

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.

LRC przechowuje tylko początek wiersza i tekst, a MicroDVD parę numerów klatek. Konwersja przelicza więc numer startowy przez liczbę klatek na sekundę i zapisuje wynik jako `[00:04.00]`, a numer końcowy po prostu odrzuca.

Fps wybiera się w kolejności: pole na stronie, deklaracja w pierwszej linii pliku, domyślne 25. Klatka 100 przy 25 fps daje czwartą sekundę, ale LRC zapisuje ją z dokładnością do setnej, więc wynik jest zaokrąglany do 10 ms. Pionowa kreska `|` dzieli tekst na dwa wiersze z tym samym znacznikiem, co w LRC oznacza „te wiersze należą razem”.

Końce napisów znikają całkowicie, bo format ich nie przechowuje. Konwersja odbywa się w przeglądarce i nie wymaga wysyłania pliku na serwer.

Przykłady

Typowy plik MicroDVD po konwersji na LRC

Wejście

{1}{1}25
{100}{150}The quick brown fox jumps over the lazy dog.
{200}{260}Faster than|the last one.

Wynik

[00:04.00]The quick brown fox jumps over the lazy dog.
[00:08.00]Faster than
[00:08.00]the last one.

W tym wyniku giną timing, liczba klatek i precyzja: zostają tylko początki wierszy, zaokrąglone do setnej sekundy.

Ta sama konwersja na nierównym pliku wejściowym

Wejście

{1}{1}23.976
{0100}{0150}Leading zeros in the frame numbers.
[INFORMATION]
{300}{340}An unrecognized line above was kept in place.
{400}{450}Trailing spaces are kept.   

Wynik

[00:04.00]Leading zeros in the frame numbers.
[00:12.00]An unrecognized line above was kept in place.
[00:16.00]Trailing spaces are kept.   

Takie uszkodzenia ma wiele prawdziwych plików: mieszane końce wierszy, zbłąkane spacje, puste pola. Porównaj to z czystym przykładem powyżej, żeby zobaczyć, co parser wybacza.

Częste pytania

Co dzieje się z czasem zakończenia bloku MicroDVD w LRC?

Znika, bo LRC nie ma pola końca. Wiersz trwa od swojego znacznika do następnego, więc odtwarzacz i tak wylicza koniec sam. Wszystkie początki z MicroDVD pozostają zachowane, a końce nie są nigdzie zapisywane.

Jaką liczbę klatek ustawić, gdy MicroDVD ma trafić do LRC?

Pole na stronie ma pierwszeństwo, potem deklaracja w pierwszej linii pliku, a na końcu 25. LRC nie przechowuje fps, więc wartość jest potrzebna tylko podczas przeliczania klatek na czas. Dla filmu wpisz 23,976 lub 24, dla PAL 25 — zła wartość przesunie każdy wiersz.

Dlaczego czasy w LRC różnią się od tych z MicroDVD?

LRC zapisuje `[00:04.12]`, czyli setne sekundy, podczas gdy MicroDVD liczy klatki. Po przeliczeniu moment jest zaokrąglany do najbliższych 10 ms, więc napis może przesunąć się o maksymalnie 5 ms. Kolejność i tekst zostają bez zmian; różnica dotyczy wyłącznie rozdzielczości czasu.

Jak wygląda LRC powstałe z pliku MicroDVD?

Każdy blok to linia `[00:04.00]` i tekst. Nie ma numerów bloków, nagłówka ani czasów zakończenia. Plik jest gotowy do odczytu przez odtwarzacz tekstu piosenek, który sam wyliczy, jak długo trzymać wiersz na ekranie.

Jak dwuwierszowy blok MicroDVD wychodzi w LRC?

Jako dwie linie z tym samym znacznikiem czasu. LRC używa wspólnego znacznika, żeby powiedzieć „te wiersze pokazują się razem”, więc obie części napisu zachowują przynależność. W pliku wynikowym widać to jako dwa identyczne czasy startu.

Czy kolejność bloków MicroDVD zostaje w LRC?

Tak, po sortowaniu rosnąco według czasu rozpoczęcia. LRC czyta wiersze po kolei, a odtwarzacze zakładają chronologię. Jeśli źródło miało klatki poza porządkiem, wynik zostanie uporządkowany — to zmiana struktury, nie treści ani wartości momentów.

Co ginie przy powrocie z LRC do MicroDVD?

Timing i liczba klatek. LRC nie zapisuje końców, więc MicroDVD musiałoby je wyliczyć z następnych wierszy, a do zapisania numerów klatek potrzebuje fps, którego LRC nie przechowuje. Zostaje tekst i początki wierszy, które trzeba ponownie przeliczyć.

Jakie kodowanie ma LRC powstałe z MicroDVD?

Wynik jest w UTF-8, z końcami wierszy LF i bez BOM. Plik `.sub` w UTF-16 lub w jednobajtowym kodowaniu Windows zostanie zdekodowany przed konwersją, a panel wyniku o tym poinformuje. Polskie znaki wychodzą poprawnie, bo wynik zawsze korzysta z UTF-8.

Powiązane narzędzia