DokumentacjaTranskrypcje z terminala (CLI)

Transkrypcje z terminala (CLI)

Dodaj link lub plik w terminalu. Przetwarzaj całe foldery, zapisuj napisy i używaj JSON-a w skryptach oraz agentach AI.

Podaj w poleceniu transcript1 link z YouTube, X, TikToka, Instagrama, Facebooka lub Bluesky albo ścieżkę do pliku audio czy wideo. CLI przygotuje transkrypcję. Nie musisz instalować Node.js. Niżej znajdziesz wymagane wersje CLI dla pozostałych platform, a w opisie źródeł i opcji — listę obsługiwanych linków i ograniczenia.

Linki z social mediów wymagają CLI 1.2.0 lub nowszego. Wersja 1.1.0 i starsze przyjmują tylko linki z YouTube. Pozostałe odrzucają, zanim wyślą je do API. Zaktualizuj CLI poleceniem transcript1 update.

Wersja 1.2.0 wystarcza dla pierwszych sześciu platform z listy. Do Twitcha, Dailymotion, Pinteresta, LinkedIn i Snapchata potrzebujesz wydania, które już je obsługuje. Starsze CLI może odrzucić taki link jeszcze przed wysłaniem.

Podawaj linki do publicznych postów. Jeśli post zawiera kilka filmów, przepiszemy tylko pierwszy. Sprawdź, które krótkie linki działają i jakie mają limity.

Instalacja

Na macOS i Linuksie, na x64 lub ARM64, uruchom:

curl -fsSL https://transcript1.com/install.sh | sh

Program trafi do ~/.local/bin. Jeśli trzeba zmienić PATH, instalator podpowie, co dopisać. Inny folder instalacji wybierzesz przez TRANSCRIPT1_INSTALL_DIR.

Możesz też używać skrótu t1 zamiast transcript1. W zsh instalator dopisuje do ~/.zshrc alias alias transcript1='noglob transcript1'. Dzięki niemu linki z ? działają bez cudzysłowu. Jeśli nie chcesz zmian w konfiguracji powłoki, ustaw TRANSCRIPT1_NO_MODIFY_SHELL=1.

W Windows x64 otwórz PowerShell:

irm https://transcript1.com/install.ps1 | iex

Instalator zapisze program w %LOCALAPPDATA%\Programs\transcript1, doda skrót t1.cmd i dopisze folder do PATH twojego użytkownika. Po instalacji otwórz nowy terminal.

Logowanie

Uruchom:

transcript1 login

CLI otworzy transcript1.com w przeglądarce. Jeśli pracujesz przez SSH lub bez ekranu, wyświetli link w terminalu. Porównaj kod z terminala z kodem na stronie i kliknij „Approve”. Po zatwierdzeniu CLI zapisze klucz transcript1 CLI (<computer name>). Sprawdzisz go na stronie „API keys”.

Jeśli chcesz dostać sam link, bez otwierania przeglądarki, uruchom transcript1 login --no-browser.

Jeśli masz już klucz, uruchom transcript1 login --with-key i wklej go w terminalu. Możesz też przekazać go przez stdin: transcript1 login < key.txt.

W konfiguracji CI lub agenta ustaw TRANSCRIPT1_API_KEY. Ta zmienna ma pierwszeństwo przed zapisanym kluczem. Agent bez terminala lub klucza może uruchomić transcript1 login < /dev/null i przesłać ci link do zatwierdzenia dostępu.

Polecenie transcript1 logout unieważni klucz CLI i usunie go z komputera. Jeśli nie uda się go unieważnić, CLI usunie lokalną kopię i poprosi cię o dokończenie tego na stronie „API keys”. Klucze wklejone ręcznie unieważnij sam na tej stronie.

transcript1 'https://youtu.be/dQw4w9WgXcQ'

CLI czeka, aż transkrypcja będzie gotowa, i wypisuje tekst na stdout. Na YouTube, X, TikToku, Bluesky, Dailymotion i LinkedIn najpierw sprawdza napisy w języku nagrania. Jeśli nie da się z nich skorzystać, uruchamia transkrypcję AI. Komunikaty o postępie trafiają na stderr.

W zsh ujmuj linki w cudzysłów. Bez niego & rozdziela polecenia, a powłoka traktuje ? jako wzorzec dopasowania plików. Alias z instalatora wyłącza dopasowanie dla ?, ale nie chroni przed &.

Jak przepisać plik z dysku

transcript1 interview.mp3
transcript1 -f srt -o interview.srt interview.mp3

Podaj plik do 2 GB (2 000 000 000 bajtów) z rozszerzeniem mp3, wav, m4a, flac, ogg, opus, mp4, mov, webm lub mkv. CLI samo wyśle plik i poczeka na gotowy tekst.

Kilka nagrań lub cały folder

W jednym poleceniu możesz podać kilka nagrań albo folder:

transcript1 interview.mp3 lecture.mp4
transcript1 -o transcripts/ ./recordings
transcript1 --jobs 4 -o transcripts/ interview.mp3 'https://youtu.be/dQw4w9WgXcQ'

Możesz używać wzorców takich jak recordings/*.mp3, także w Windows. Z folderu CLI wybiera pliki audio i wideo, sortuje je po nazwie i nie zagląda do podfolderów. Przy kilku nagraniach zapisuje każdą transkrypcję w osobnym pliku, domyślnie w ./transcripts. Opcją --jobs ustawisz liczbę nagrań przetwarzanych naraz: od 1 do 20, domyślnie 2.

Żeby wczytać listę ze stdin, podaj -. Każda linia powinna zawierać jeden link albo ścieżkę do pliku. Na macOS lub Linuksie uruchom:

transcript1 -o transcripts/ - < inputs.txt

CLI pomija puste linie i linie zaczynające się od #. Identyczny link lub ścieżkę przetworzy tylko raz.

Przy jednym nagraniu -o wskazuje plik do zapisu. Jeśli podana ścieżka jest istniejącym folderem lub kończy się na /, wskazuje folder. Przy kilku nagraniach -o zawsze oznacza folder. CLI utworzy go, jeśli jeszcze nie istnieje.

Jeśli plik z transkrypcją już istnieje, CLI pomija link z YouTube lub lokalny plik, do którego ta transkrypcja należy. Dodaj --overwrite, żeby przetworzyć nagranie ponownie:

transcript1 --overwrite -o transcripts/ ./recordings

Formaty i opcje

OpcjaZnaczenie
-f, --formatWybierz text (domyślnie), srt, vtt lub json. W JSON dostajesz obiekt transkrypcji z API.
--speakersDodaje podział na rozmówców z etykietami Speaker 1, Speaker 2 itd.
--timestampsDodaje [hh:mm:ss] przed każdą linią. Działa tylko z formatem tekstowym.
--languagePodaj kod języka ISO 639-1 albo zostaw domyślne auto.
--sourceWybierz auto (domyślnie) lub stt. Na YouTube, X, TikToku, Bluesky, Dailymotion i LinkedIn działa też captions, jeśli da się pobrać odpowiednie napisy. Tryb captions (tylko napisy) nie pobiera audio i nie uruchamia STT.
--freshTworzy nową transkrypcję linku zamiast korzystać z wcześniejszej z ostatnich 24 godzin.

Tak włączysz podział na rozmówców i znaczniki czasu:

transcript1 --speakers --timestamps --language en interview.mp3

Nie łącz --speakers z --source captions. W trybie auto podział na rozmówców uruchamia transkrypcję audio zamiast pobierania napisów. Obsługa napisów z YouTube i X działa jak dotychczas. Napisy możesz też pobrać z TikToka, Bluesky, Dailymotion i LinkedIn. Poza YouTube dostajesz tylko czasy całych fragmentów, bez czasów słów (words: null), również przy napisach generowanych automatycznie. Sprawdź obsługę źródeł i zasady wyboru języka.

Dla skryptów i agentów AI

Agent z dostępem do powłoki może zainstalować CLI, ustawić TRANSCRIPT1_API_KEY i wywołać transcript1 <link> lub transcript1 <file>. Jeśli klient korzysta z MCP, przejdź do konfiguracji serwera MCP.

Dodaj --json, żeby dla każdego nagrania dostać na stdout osobną linię JSON tuż po zakończeniu. CLI nie wypisze wtedy postępu, podsumowania ani powiadomienia o aktualizacji:

transcript1 --json 'https://youtu.be/dQw4w9WgXcQ'

Po zakończeniu zadania dostajesz obiekt transkrypcji z API z dodatkowymi polami input i reused. Jeśli CLI zapisze tekst do pliku, doda file zamiast transcript. Błąd, który wystąpił przed nadaniem ID, zawiera input oraz obiekt error z code i message. Dla pominiętego nagrania dostaniesz input, skipped (exists lub out_of_minutes) i, jeśli dotyczy, file. Wartość exists dotyczy tylko linków z YouTube i plików lokalnych.

Dla jednego nagrania bez -o dostaniesz obiekt z transkrypcją; --json ignoruje wtedy -f. Przy kilku nagraniach bez -o CLI zapisuje transkrypcje w ./transcripts; linie JSON zawierają wtedy file zamiast transcript. Format zapisywanego pliku zawsze wybierasz przez -f. Jeśli chcesz wyłączyć tylko postęp i podsumowania, użyj -q lub --quiet. Tekst transkrypcji i błędy nadal się pojawią.

Możesz też zlecić transkrypcję i odebrać ją później:

transcript1 --no-wait interview.mp3
transcript1 get <id>

Wstaw w miejsce <id> identyfikator z pierwszego polecenia. Z --no-wait dostaniesz ID i status, a po dodaniu --json — cały obiekt. Polecenie get czeka na zakończenie transkrypcji. Obsługuje -f, -o, --timestamps, --no-wait, --json i -q.

Aktualizacje

transcript1 update

Jeśli stderr jest podłączone do terminala, CLI sprawdza dostępność aktualizacji najwyżej raz na 24 godziny. Gdy znajdzie nowszą wersję, wyświetli powiadomienie. Ustaw TRANSCRIPT1_NO_UPDATE_CHECK=1, żeby wyłączyć sprawdzanie. Opcje --json i -q również ukrywają powiadomienie.

Kody wyjścia

KodZnaczenie
0CLI przetworzyło wszystkie nagrania lub pominęło te, które mają już plik z transkrypcją. Pomijanie dotyczy linków z YouTube i plików lokalnych.
1Co najmniej jednej transkrypcji nie udało się zrobić lub zabrakło na nią minut.
2Błąd w poleceniu albo problem z logowaniem.
130Przerwano działanie CLI.

Pełną listę poleceń i flag sprawdzisz przez transcript1 --help lub samo transcript1.

Ostatnia aktualizacja 18 października 2026