Запись трансляций — генератор команд yt-dlp
Соберите команду yt-dlp для записи прямой трансляции — с начала, если платформа это позволяет.
Как записывать трансляцию без потерь
Запись с начала берёт трансляцию от её начала, а не с момента, когда вы запустили команду, — при условии, что платформа ещё хранит предыдущую часть. Ожидание трансляции опрашивает запланированный стрим и начинает в ту же секунду, когда он выходит в эфир.
Выбирайте MKV. Запись, оборвавшаяся неожиданно — а записи трансляций обрываются, — обычно оставляет воспроизводимый MKV, тогда как MP4, обрезанный посреди записи, часто вообще не открывается. Возобновить запись трансляции нельзя, поэтому выбор container и есть вся страховка.
Ожидание запланированной трансляции — режим, отличный от записи идущей: «ожидание трансляции» опрашивает URL, пока трансляция не откроется, и начинает запись — оставьте терминал работать, и он снимет с первой минуты. Интервал опроса — минуты, а не секунды, поэтому запускайте команду заранее; опоздание к опросу стоит минут эфира, и никакая опция не вернёт минуты, которые никогда не были записаны.
У «записи с начала» есть платформенная граница: YouTube хранит начало трансляции и отдаёт его по запросу, так что опция действительно достаёт его; Twitch аналогично в пределах своего окна хранения. Другие платформы не хранят ничего до момента вашего присоединения. Именно поэтому опция не волшебный переключатель — она забирает то, что платформа сохранила, а что хранить, у платформ различается. Если платформа потом предлагает повтор, повтор — лучший источник, чем любая live-запись.
Прямая трансляция по определению HLS: сотни коротких сегментов, приходящих в реальном времени и соединяемых ffmpeg в контейнер по мере прибытия. Вот почему live-запись — случай, где MKV важнее всего — MP4 пишет индекс в конце, и запись, убитая на третьей минуте двухчасовой трансляции, индекса не имеет вовсе. Дисковое пространство — другой реальный предел: live-запись растёт с битрейтом потока, пока идёт; лимит размера защитит диск, когда стример забыл остановиться и трансляция идёт двенадцатый час.
По факту два момента заслуживают упоминания. Запись с мёртвым воздухом — норма: тишина между сегментами события есть в самом источнике, и вырезать её потом — правка, а не неудавшаяся загрузка. И трансляции, закончившиеся часами раньше, к моменту находки — обычные VOD: пользуйтесь обычными видеоопциями платформы — теми, что форма показывает по умолчанию, — а специфичными для live — только пока трансляция действительно идёт.