Przejdź do treści
SubtitleMatrix

Edytor tekstów z timingiem

Napisy z mediówEdytor tekstu piosenki z czasem

Tekst piosenki

Puste wiersze są pomijane. Wiersz, który już zaczyna się od [mm:ss.xx], zachowuje ten czas.

Upuść plik audio, wklej tekst, a potem naciśnij odtwarzanie i stuknij klawisz znacznika, gdy zaczyna się każdy wiersz. Nic nie opuszcza tej karty.

Przesuń każdy wiersz z czasem

Wyeksportowany .lrc

Wiersz pojawi się tutaj, gdy będzie miał czas.

Wiersze bez czasu są pomijane w obu eksportach: wiersz potrzebuje znacznika, zanim znajdzie miejsce na osi czasu.

Klawiatura

  • K lub spacja — odtwarzanie / pauza
  • Strzałka w lewo / w prawo — 5 sekund do tyłu / do przodu
  • R — oznacz ten wiersz i przejdź do następnego
  • T — wstaw wiersz po tym
  • Delete — wyczyść czas tego wiersza
  • Strzałka w górę / w dół — przejdź do poprzedniego / następnego wiersza

Ta strona zamienia piosenkę i listę wierszy w plik .lrc z czasami. Wczytaj plik audio, wklej tekst — czysty tekst, jeden wiersz na linię, albo istniejący .lrc, którego znaczniki chcesz poprawić — naciśnij odtwarzanie i stuknij klawisz w momencie startu każdego wiersza. Znacznik jest brany z bieżącego czasu elementu audio, więc podąża za plikiem, którego słuchasz, a nie za zegarem w stronie. Gdy ostatni wiersz ma znacznik, wyeksportuj wynik jako .lrc albo jako .srt, jeśli edytor napisów, do którego go podajesz, wymaga takiego.

Lista wierszy to cały model. Wiersz ma tekst i opcjonalny czas startu; wiersz bez czasu startu to ten, do którego jeszcze nie dotarłeś. Wiersze bez znacznika zostają w edytorze, żebyś mógł do nich wrócić, ale nie pojawiają się w eksporcie: wiersz bez czasu startu nie ma pozycji na osi czasu, a wymyślenie jej położyłoby wiersz na ekranie w chwili, której nikt nie wybrał. Dlatego plik wyeksportowany w połowie piosenki jest krótszy niż lista przed tobą, a nie błędny.

Cztery operacje pokrywają to, co naprawdę idzie nie tak przy synchronizacji tekstu. Stemplowanie ustawia wiersz na bieżący czas odtwarzania, a edytor przeskakuje do następnego wiersza, więc ciąg wierszy zajmuje jedno naciśnięcie na wiersz. Czyszczenie usuwa znacznik, który trafił o beat za wcześnie. Wstawianie dodaje wiersz, o którym zapomniałeś przy wklejaniu. Przesuwanie rusza każdy zaznaczony wiersz o tę samą liczbę milisekund, co jest potrzebne po zauważeniu, że cały plik jest sekundę za wokalem — względne odstępy zostają nienaruszone, a ujemne przesunięcie zatrzymuje się na zerze, zamiast zapisywać znacznik czasu, którego odtwarzacze nie potrafią przeczytać.

Model czasu jest ten sam, który ma sam LRC. Wiersz trwa do początku następnego; ostatni wiersz nie ma następnego, więc dostaje dwie sekundy — tę samą szerokość, której ta witryna używa, gdy format nie ma własnego czasu końca. Przy eksporcie .srt stąd biorą się czasy końca: to ta sama pochodna, którą robi konwersja z pliku .lrc na stronach konwersji, więc obie drogi dają tę samą oś czasu. Setne sekundy to precyzja, którą .lrc potrafi zapisać; znacznik 12,346 s jest zapisywany jako 12,34, dlatego wyeksportowany plik odczytany z powrotem może różnić się od edytora o kilka milisekund.

Plik audio jest otwierany przez wbudowany element audio przeglądarki i nigdy nie jest czytany, parsowany ani wysyłany przez tę stronę. Nie ma żadnego żądania, które by go niosło; jedyny ruch sieciowy to sama strona. Szkic listy wierszy jest trzymany w pamięci lokalnej tej przeglądarki, żeby przypadkowe odświeżenie nie kosztowało sesji pracy, a wyczyszczenie danych witryny go usuwa. Nic o piosence ani tekście nie istnieje na serwerze po zamknięciu karty.

Przykłady

Czysty tekst piosenki, ostemplowany za jednym przebiegiem

Tekst piosenki

First line of the song
Second line of the song
Third line of the song

Wyeksportowany .lrc

[00:12.00]First line of the song
[00:15.30]Second line of the song
[00:18.75]Third line of the song

Każdy ostemplowany wiersz to jeden blok. Eksport .lrc zapisuje setne sekundy, więc 18,75 s to dokładnie to, co zarejestrowało naciśnięcie; znacznik 18,754 zostałby zapisany jako 18,75.

Ponowne ustawienie czasu w istniejącym .lrc

Tekst piosenki

[00:12.00]First line of the song
[00:14.00]Second line of the song
Third line of the song

Wyeksportowany .lrc

[00:12.00]First line of the song
[00:14.00]Second line of the song
[00:17.75]Third line of the song

Wklejenie .lrc zachowuje znaczniki, które już ma. Trzeci wiersz przyszedł bez znacznika, czekał bez niego do odtworzenia i został ostemplowany na 17,75 s.

Częste pytania

Czy niezaznaczone wiersze trafią do pliku .lrc w edytorze tekstów?

Nie. Wiersz bez znacznika nie ma czasu startu, a .lrc pozycjonuje wiersz wyłącznie znacznikiem czasu, więc nie ma czego zapisać. Wiersz zostaje na liście edytora bez czasu obok, a w chwili gdy odtworzysz go i naciśniesz klawisz stempla, dołącza do eksportu. To celowe, nie ograniczenie: alternatywą jest nadanie wierszowi wymyślonego czasu, co kładzie go na ekranie w chwili, której nigdy nie wybrałeś — dokładnie ten rodzaj cichego wymyślania, którego ta witryna unika gdzie indziej.

Jak długo ostatni wiersz zostaje na ekranie w eksporcie .srt z edytora?

Dwie sekundy po swoim czasie startu. LRC nie ma w ogóle czasów końca — wiersz trwa do początku następnego — więc ostatni wiersz nie ma od czego odziedziczyć końca. Dwie sekundy to ta sama szerokość, której witryna używa dla każdego formatu bez czasów końca, więc eksport .srt z tego edytora i strona konwersji .lrc na .srt dają tę samą oś czasu dla tych samych znaczników. Jeśli piosenka naprawdę trzyma ostatni wiersz osiem sekund, przesunięcie albo zmiana czasu trwania jest uczciwa wobec tego; domysł ukryty w eksporterze nie jest.

Co się dzieje, gdy w edytorze przesunę całą oś czasu przed pierwszy wiersz?

Te wiersze zatrzymują się na zerze, a edytor mówi, ile zostało przyciętych. Ujemny znacznik czasu nie istnieje w .lrc ani w .srt — odtwarzacz albo odrzuci plik, albo potraktuje wiersz jako zaczynający się na samym początku. Przesuwanie ma naprawiać przesunięcie, na przykład gdy zauważysz, że cały plik jest sekundę spóźniony; gdy żądane przesunięcie wypchnęłoby pierwszy wiersz przed początek ścieżki, fizycznie sensownym wynikiem jest zero, a pozostałe wiersze zachowują odstępy względem siebie, o ile też nie zostały przycięte.

Czy mogę wkleić istniejący .lrc do edytora i poprawić tylko błędne wiersze?

Tak — właśnie dlatego edytor czyta znaczniki LRC przy wklejaniu. Wiersze, które już niosą znacznik [mm:ss.xx], zachowują czas; tekst po znaczniku to to, co edytujesz; wiersz bez znacznika zaczyna bez czasu. Wiersze metadanych, takie jak [ti:], [ar:] i [offset:], są przy imporcie ignorowane, a nie traktowane jak tekst piosenki, bo nie są wierszami, które ktokolwiek śpiewa. Wiersz z kilkoma znacznikami bierze pierwszy, bo model edytora to jeden czas startu na wiersz.

Czy edytor tekstów wysyła plik audio, żeby odczytać długość lub przebieg fali?

Nie — i przebiegu fali też nie ma. Audio jest odtwarzane przez wbudowany element audio przeglądarki z lokalnego uchwytu pliku; ta strona nigdy nie czyta jego bajtów, nie dekoduje go i nie wysyła żądania, które by go zawierało. Znaczniki czasu pochodzą z bieżącej pozycji odtwarzania elementu audio w momencie naciśnięcia klawisza, czyli z tej samej liczby, którą dałby przebieg fali. Dekodowanie całego utworu z albumu dla przebiegu fali kosztowałoby pamięć i czas, nie poprawiając znacznika.

Dlaczego wyeksportowany .lrc różni się od edytora o kilka milisekund?

Bo .lrc zapisuje setne sekundy, a edytor trzyma całkowite milisekundy. Znacznik 12,346 s jest zapisywany jako [00:12.34] — zaokrąglony do najbliższej setnej, nie obcięty. Odczytanie pliku z powrotem daje 12,340 s, więc różnica wynosi najwyżej pięć milisekund na wiersz, znacznie mniej, niż odtwarzacz potrafi pokazać. Jeśli potrzebujesz dokładnego znacznika, wyeksportuj .srt: niesie milisekundy, a oba pliki powstają z tego samego modelu bloków.

Powiązane narzędzia