Przejdź do treści
SubtitleMatrix

Transkrypcja audio na napisy

Napisy z mediówMowa na napisy

Pierwsze uruchomienie pobiera model mowy — około 45 MB dla poziomu szybkiego, 81 MB dla dokładnego, serwowany przez tę stronę i potem zapamiętany przez przeglądarkę. Nic nie jest wysyłane, a transkrypcja jest tworzona maszynowo: sprawdź brzmienie i czasy, zanim ją opublikujesz.

Opcje

Dwa poziomy tego samego modelu. Szybki ma około 45 MB i transkrybuje mniej więcej dwa razy szybciej; dokładny ma około 81 MB i lepiej trafia z wielkością liter i interpunkcją. Oba działają tutaj, a pobranie następuje raz na przeglądarkę. Przy długim nagraniu wypróbuj najpierw poziom szybki, aby sprawdzić, czy język jest właściwy.

Język, którym mówi się w nagraniu. Nie ma opcji automatycznej: ta wersja modelu nie wykrywa języka, a bez wyboru zakłada angielski. Chińskie nagranie czytane jako angielskie nie kończy się błędem — daje płynnie wyglądające bzdury, które znacznie trudniej zauważyć. Wybierz język, który naprawdę słyszysz.

.srt odtwarza się wszędzie, także w starszych edytorach i telewizorach; .vtt to format internetowy i niesie trochę więcej struktury. Oba zawierają dokładnie te same bloki z dokładnie tymi samymi czasami, więc wybierz ten, którego oczekuje następne narzędzie w twoim łańcuchu.

Ta strona słucha nagrania i zapisuje to, co słyszy, jako plik z napisami: jeden blok na zdanie, ze startem i końcem każdego bloku umieszczonym tam, gdzie naprawdę padają słowa. Wrzuć wywiad, wykład, notatkę głosową albo ścieżkę audio filmu, który w ogóle nie ma napisów, a dostaniesz .srt albo .vtt, który zagra w każdym odtwarzaczu. Żadna ścieżka napisów nie musi istnieć wcześniej — to strona na sytuację, gdy nie ma czego wyciągać.

Słuchanie odbywa się w karcie. Model mowy działa na WebAssembly przez onnxruntime, pliki modelu są serwowane z tej witryny, a jedynym ruchem sieciowym jest to pobranie: około 45 MB dla modelu szybkiego, około 81 MB dla dokładnego, buforowane potem przez przeglądarkę. Nagranie nigdy nie jest nigdzie wysyłane. Jeśli sprawdzisz panel Sieć podczas transkrypcji, zobaczysz żądania pobierające dane modelu i ani jednego bajtu w drugą stronę.

To, co wychodzi, jest najlepszym domysłem maszyny, a nie transkrypcją urzędową. Słowa, które model usłyszał źle, zostają źle usłyszane, a czasy są dokładne mniej więcej do długości frazy, nie do klatki. Sprawdź tekst przed publikacją i traktuj wynik tak, jak traktowałbyś pierwszy szkic napisany przez szybkiego człowieka, który nie znał tematu. To ta sama zasada uczciwości, której trzymają się strony OCR, i powód, dla którego ta strona mówi o tym na górze, a nie w przypisie.

Nagranie jest cięte na trzydziestosekundowe okna z pięciosekundowym zakładem i każde okno jest transkrybowane osobno. To umożliwia długie pliki bez trzymania godziny audio w modelu naraz i dlatego anulowanie działa przy następnym oknie, a nie natychmiast. Zdania przechodzące przez granicę są deduplikowane przez odrzucanie wszystkiego, co następne okno zgłasza jako zaczynające się przed końcem poprzedniego — wygrywa wcześniejszy odczyt, bo usłyszał całą frazę.

Długie zdania są dzielone na granicach zdań, a potem przez parę limitów: żaden blok dłuższy niż siedem sekund i żaden szerszy niż 84 znaki, zawijany do najwyżej 42 znaków na linię. To te same limity, które podaje większość nadawców, więc wynik zwykle przechodzi pierwsze sprawdzenie zgodności bez edycji.

Częste pytania

Co się dzieje, gdy nagranie w transkrypcji mowy na napisy jest w języku innym niż angielski?

Musisz powiedzieć stronie, jaki język jest mówiony, bo ta wersja modelu go nie wykrywa. Nie ma opcji automatycznej i to celowe: bez wybranego języka model zakłada angielski. Chińskie nagranie czytane jako angielski nie kończy się błędem — zwraca pewnie wyglądające angielskie słowa, które mgliście przypominają oryginał, co jest znacznie trudniejsze do zauważenia niż komunikat o błędzie. Wybierz język, który naprawdę słyszysz, a jeśli nie jesteś pewien, przepisz najpierw trzydzieści sekund modelem szybkim i sprawdź.

Jak dokładne są znaczniki czasu w transkrypcji mowy do napisów w porównaniu z napisami ręcznymi?

Wystarczające do odtwarzania, niewystarczające do emisji bez edycji. Start i koniec każdego bloku pochodzą z granic segmentów samego modelu, które wypadają na krawędziach fraz, a nie w dokładnej klatce, w której zaczyna się słowo. Gdy dwa bloki nachodziłyby na siebie, późniejszy jest przesuwany do przodu, a korekta jest liczona na liście strat, więc nic się nie nakłada i nic nie cofa w czasie. Jeśli klient potrzebuje synchronizacji co do klatki — dom napisów dostarczający nadawcy — uczciwa odpowiedź brzmi: ten wynik jest szkicem do ręcznego ustawienia czasów, nie dostawą.

Po co transkrypcja mowy na napisy oferuje szybki model, skoro istnieje dokładny?

Bo na długim pliku różnica jest różnicą między czekaniem a porzuceniem. Zmierzone na minucie wyraźnej mowy: szybki model zajmuje około 3,7 sekundy, a dokładny około 7,5 — mniej więcej dwa razy dłuższe czekanie na każdą minutę audio. Szybki model też agresywniej stosuje wielkie litery i czasem wymyśla interpunkcję; dokładny jest bliższy temu, co napisałby człowiek. Częsty wzorzec to przepuszczenie godzinnego wywiadu szybkim modelem, żeby sprawdzić język i jakość audio, a potem powtórzenie z dokładnym, gdy już wiesz, że plik jest w porządku.

Co znaczy „nie rozpoznano mowy” w transkrypcji, gdy słychać rozmowę?

Znaczy, że model nie usłyszał niczego, co mógłby zapisać, a to ma trzy zwykłe przyczyny: ustawienie języka nie zgadza się z tym, co jest mówione; mowa jest zagłuszona muzyką lub szumem; albo ścieżka audio jest bardzo cicha. Sam plik jest nienaruszony — strona odróżnia to od pliku, którego audio nie dało się w ogóle zdekodować, bo te dwa przypadki wymagają różnych poprawek. Zmień język mówiony albo sprawdź, czy wrzucona ścieżka audio jest tą, którą miałeś na myśli (ścieżka komentarza filmu to inny strumień niż dialog).

Czy można przerwać transkrypcję mowy do napisów, która trwa zbyt długo?

Tak, a strona mówi wprost, kiedy się zatrzymuje. Pobieranie modelu można anulować w każdej chwili. Podczas rozpoznawania modelu nie da się przerwać w środku okna — anulowanie działa więc na starcie następnego trzydziestosekundowego okna, co w szybkim modelu oznacza kilka sekund. Nic częściowego nie jest oferowane do pobrania. Model zostaje w pamięci podręcznej, więc kolejna próba nie pobiera go ponownie.

Czy wynikowy .srt z transkrypcji zachowuje etykiety mówców lub interpunkcję?

Zachowuje interpunkcję, którą model wyprodukował — zwykle sensowną, ale nie niezawodną — i nie wymyśla etykiet mówców: ten model nie rozdziela głosów, więc dwie osoby mówiące stają się jednym strumieniem tekstu. Dodawanie etykiet mówców to tutaj praca ręczna. Jeśli ich potrzebujesz, najpierw przepisz, a potem edytuj — plik otwiera się w każdym edytorze napisów, a bloki są już podzielone na granicach zdań, co czyni ten przebieg znacznie szybszym niż start od pustej osi czasu.

Powiązane narzędzia