youtube-dl оптимальное разрешение видео в максимальных пределах

319
Nikhil VJ

Обычно youtube-dl стремится снимать с максимально возможным качеством. Это не всегда практично. Обратная сторона, которую я видел, была для минимально возможного качества. Это тоже не практично. Какая команда заставит youtube-dl найти формат самого высокого качества, который находится в пределах установленного ограничения?

Скажем: ширина разрешения равна или ниже определенного значения. Посмотрите этот пример для доступных форматов для данной ссылки на видео:

youtube -F <link> ... format code extension resolution note 2242414685833597ad m4a audio only DASH audio 21k, m4a_dash container, mp4a.40.2 (48000Hz) 572715713158985v mp4 426x240 DASH video 216k, mp4_dash container, avc1.4D401E, video only 110928776481884vd mp4 640x360 DASH video 420k, mp4_dash container, avc1.4D401E, video only 896314927220784v mp4 854x480 DASH video 738k, mp4_dash container, avc1.4D401E, video only 313835759204486v mp4 1280x720 DASH video 1372k, mp4_dash container, avc1.4D401F, video only dash_sd_src mp4 unknown  dash_sd_src_no_ratelimit mp4 unknown (best) 

Я хочу сказать youtube-dl выбрать видеопоток самого высокого качества, ширина которого не превышает 640 пикселей. Это было бы 110928776481884vdв этом случае.

Если это невозможно сделать с шириной разрешения, мы могли бы сделать с битрейтом. Так что в этом же примере битрейт должен быть 500k или ниже.

Примечание. Этот вопрос специально предназначен для видео, не относящихся к YouTube, от разных поставщиков, имеющих разные форматы. У YouTube есть названия стандартных форматов, так что я уже исправил это.

-1

1 ответ на вопрос

1
Ipor Sircer

Прочитайте прекрасное руководство:

 Format selection examples Note that on Windows you may need to use double quotes instead of sin‐ gle.  # Download best mp4 format available or any other best if no mp4 available $ youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best'  # Download best format available but not better that 480p $ youtube-dl -f 'bestvideo[height<=480]+bestaudio/best[height<=480]'  # Download best video only format but no bigger than 50 MB $ youtube-dl -f 'best[filesize<50M]'