Przejdź do treści
yt-dlp

Nagrywanie transmisji — generator poleceń yt-dlp

Złóż polecenie yt-dlp do nagrania transmisji na żywo, od początku tam, gdzie platforma na to pozwala.

Opcjonalne. Zostaw puste i polecenie skończy się słowem URL, które wpiszesz sam.

Twoje polecenie

yt-dlp --merge-output-format mkv --no-playlist -N 4 --live-from-start --wait-for-video 60-300 'https://www.youtube.com/watch?v=live_stream_id'
Podstawy

Tylko dźwięk wyciąga ścieżkę audio i porzuca obraz.

Wideo i jakość

Ogranicza wysokość. yt-dlp i tak wybierze najlepszą ścieżkę na tym poziomie lub niżej.

Typ pliku, w którym scalane są osobne ścieżki obrazu i dźwięku.

Opcje zaawansowane (3)

Zastępuje listę jakości. Dla tych, którzy znają już składnię formatów.

Przepakowuje ścieżki bez przekodowania. Szybko i bez straty.

Przekodowuje obraz. Wolno i ze stratą — tylko gdy remux nie wystarcza.

Dźwięk

Plik, na który konwertowany jest dźwięk.

VBR daje najlepszy stosunek rozmiaru do jakości; stały bitrate jest bardziej przewidywalny.

Napisy

Wtopienie umieszcza je w pliku wideo; zapis tworzy obok osobny plik .srt.

Rozdzielone przecinkami. Wpisz all, żeby wziąć wszystkie dostępne języki.

Playlisty i kanały

Co zrobić, gdy adres należy zarazem do filmu i do playlisty.

Działają zakresy i listy, na przykład 1-10,15 albo -5::2, żeby brać co drugą pozycję od końca.

Opcje zaawansowane (1)

Zapisuje, co już pobrano, więc kolejne uruchomienie to pomija. Tak utrzymuje się kanał w zgodzie ze źródłem.

Fragmenty i rozdziały
Opcje zaawansowane (2)

Zakres czasu w postaci *00:01:30-00:03:00 albo nazwa rozdziału. Gwiazdka na początku oznacza, że to znacznik czasu.

Metadane i okładka
Opcje zaawansowane (3)
SponsorBlock

Wycina z pliku fragmenty oznaczone przez społeczność, na podstawie danych SponsorBlock.

Opcje zaawansowane (1)

Zostawia fragmenty, ale je oznacza, żebyś sam je przeskakiwał.

Pliki i foldery

Nazwy pól wpisuje się w %(...)s. Ukośniki tworzą foldery.

Opcje zaawansowane (4)

Gdzie zapisywać pliki. W połączeniu ze wzorem powyżej daje podfoldery.

Maksymalna długość nazwy pliku w znakach.

Filtry
Opcje zaawansowane (5)

RRRRMMDD albo data względna, na przykład now-1month.

RRRRMMDD albo data względna.

Pomija wszystko mniejsze. Przyjmuje 5M, 500K i podobne.

Pomija wszystko większe.

Ile plików pobrać, zanim proces się zakończy.

Sieć

Na przykład 2M albo 500K. Przydatne, gdy resztę pasma potrzebujesz na coś innego.

Opcje zaawansowane (5)

Przyspiesza strumienie dzielone na fragmenty. Cztery to sensowny początek.

Ile razy powtarzać nieudany fragment. Można wpisać infinite.

Adres proxy HTTP, HTTPS albo SOCKS.

Sprawia, że żądania wyglądają jak z prawdziwej przeglądarki. To zwykłe lekarstwo na nagłe 403.

Logowanie i cookies

Czyta wprost twoją zalogowaną sesję. Potrzebne przy treściach prywatnych, z ograniczeniem wieku albo tylko dla członków.

Opcje zaawansowane (1)

Plik cookies.txt w formacie Netscape wyeksportowany z przeglądarki.

Transmisje na żywo
Opcje zaawansowane (2)

Odpytuje, dopóki zaplanowana transmisja się nie zacznie. MIN-MAX to sekundy między sprawdzeniami.

Obejścia
Opcje zaawansowane (3)

Przestarzałe na rzecz --add-headers. Zostało, bo wiele starszych poradników nadal tego używa.

Przestarzałe na rzecz --add-headers.

Opcje właściwe danej stronie, na przykład youtube:player_client=web.

Wyjście i diagnostyka
Opcje zaawansowane (2)
Wyczyść

Jak bezpiecznie nagrać transmisję

Nagrywanie od początku ujmuje transmisję od jej startu, a nie od chwili, w której odpaliłeś polecenie — o ile platforma wciąż ma wcześniejszą część. Czekanie na transmisję odpytuje zaplanowany strem i rusza w sekundzie, w której wchodzi on na antenę.

Wybierz MKV. Nagranie, które nieoczekiwanie się urwie — a nagrania transmisji się urywają — zwykle zostawia odtwarzalny MKV, natomiast MP4 ucięty w połowie zapisu często nawet się nie otwiera. Nagrania transmisji nie da się wznowić, więc wybór containera jest całym zabezpieczeniem.

Czekanie na zaplanowaną transmisję to inny tryb niż nagrywanie trwającej: czekanie na transmisję odpytuje adres, aż transmisja się otworzy, po czym zaczyna nagrywać — zostaw terminal włączony, a weźmie od pierwszej minuty. Odstęp odpytywania liczy się w minutach, nie w sekundach, więc uruchom polecenie wcześnie; spóźnienie na odpytywanie kosztuje minuty transmisji, i żadna opcja nie odzyska minut, które nigdy nie zostały nagrane.

Nagrywanie od początku ma granicę platformową: YouTube trzyma początek transmisji i podaje go na żądanie, więc opcja tam faktycznie sięga; Twitch podobnie, w ramach swojego okna retencji. Inne platformy nie trzymają niczego sprzed chwili, w której dołączyłeś. Dlatego ta opcja nie jest magicznym przełącznikiem — przynosi to, co platforma przechowała, a platformy różnią się tym, co przechowują. Jeśli platforma oferuje potem powtórkę, powtórka jest lepszym źródłem niż jakikolwiek zapis na żywo.

Transmisje na żywo są z definicji HLS: setki krótkich fragmentów przybywających w czasie rzeczywistym, sklejanych przez ffmpeg w container, gdy przybywają. Dlatego nagrywanie transmisji to przypadek, gdzie MKV ma największe znaczenie — MP4 musi zapisać swój indeks na końcu, a nagranie zabite w trzeciej minucie dwugodzinnej transmisji nie ma indeksu wcale. Miejsce na dysku to drugi prawdziwy limit: nagranie transmisji rośnie przez cały czas jej trwania w bitowym tempie strumienia, a limit rozmiaru chroni dysk przy transmisji, która ciągnie się dwanaście godzin, bo nadawca zapomniał się zatrzymać.

Po fakcie dwie rzeczy zasługują na nazwanie. Nagranie z martwym powietrzem jest normalne — cisza między fragmentami wydarzenia jest w źródle — i wycięcie jej później to montaż, nie nieudane pobieranie. A transmisje, które skończyły się godziny temu, są do czasu odnalezienia zwykłymi VOD-ami: użyj normalnych opcji filmowych platformy — to je ten formularz pokazuje domyślnie — a opcje specyficzne dla transmisji tylko wtedy, gdy transmisja faktycznie trwa.

Częste pytania

Czy mogę nagrać transmisję od początku?
Włącz nagrywanie od początku. Działa tylko tam, gdzie platforma nadal trzyma wcześniejszą część transmisji.
Jak nagrać transmisję, która się jeszcze nie zaczęła?
Użyj czekania na transmisję z odstępem MIN-MAX. yt-dlp odpytuje i rusza w chwili, w której transmisja wchodzi na antenę.
Który container jest najlepszy do transmisji?
MKV. Znosi przerwanie zapisu, natomiast MP4 ucięty w trakcie nagrywania może przestać się otwierać.
Co się stanie, jeśli nagranie zostanie przerwane?
Przy MKV zwykle zostaje wszystko, co udało się zapisać. Wznowienie nagrania transmisji nie jest możliwe — brakująca część przepadła.