Как скачать разделы из видео с YouTube из командной строки при плохом интернете

Я хочу загрузить определенные разделы из потока YouTube. В настоящее время я использую эту команду для выполнения этой работы:

      yt-dlp --download-sections "*30:15-1:40:25" $LINK       

проблема в том, что если соединение потеряно всего на несколько минут, то загрузку приходится начинать заново, я тоже знаю такую ​​команду:

      youtube-dl --youtube-skip-dash-manifest -g "URL"

Два вывода URL сохраняются в urls[] в Python и:

      ffmpeg -y -ss "00:41:10" -i urls[0] -ss "00:41:10" -i urls[1] -map 0:v -map 1:a -ss 5 -t  "01:50:11" -c:v libx265 -c:a aac ../Clips/stream.mkv

Также возникает проблема с потерей всех загруженных файлов, если соединение потеряно на несколько минут.

Я не могу загрузить весь поток, потому что это займет вечность, поэтому просто используйте:

      youtube-dl $LINK

или

      yt-dlp $LINK

это не вариант, хотя они предлагают переподключение

1 ответ

Есть некоторые (возможно) лучшие формы команды/аргументов ffmpeg, которые можно использовать - хотя, по общему признанию, это все еще не решает проблему повторного подключения.

С Reddit — Как скачать отдельные части прямой трансляции?,

       ffmpeg -ss 11:23:32 -to 12:25:00 -i $(yt-dlp -g https://youtube.com/watch?v=EXAMPLE) ./my-clip.mp4

Видеоурок: https://www.youtube.com/watch?v=aBtbsfPrkcc

...

В Linux вы можете запланировать выполнение команды с помощью таймера at command, cron или systemd. Я уверен, что есть способ запланировать выполнение команды в Windows, но я не знаю, как это сделать.

Если ты пройдешь-t hh:mm:ssвместо-to hh:mm:ssкffmpeg, он остановится по истечении указанного времени, а не начнется в указанную отметку времени.

В целом команда может выглядеть так

       echo 'ffmpeg -y -t 01:00:00 -i $(yt-dlp -g https://www.youtube.com/watch?v=6JUHxDBMAXE) clip.ts' | at 21:00

Еще примечание:

Раньше в Windows была командная строкаat.exeкоманда, но в более новых версиях она не поддерживается. Он был заменен наschtasks.exe. Графический интерфейс Windows для негоtaskschd.msc

Другие вопросы по тегам