У меня есть следующее сообщение об ошибке с youtube-dl
:
WARNING: Requested formats are incompatible for merge and will be merged into mkv.
источник
У меня есть следующее сообщение об ошибке с youtube-dl
:
WARNING: Requested formats are incompatible for merge and will be merged into mkv.
Это на самом деле не проблема , но на самом деле ожидаемое поведение для youtube-dl
.
По умолчанию текущая версия youtube-dl
загружает аудио самого высокого качества и видеопотоки самого высокого качества, а затем объединяет эти потоки в совместимый контейнер. Текущий выбор контейнера: MKV, MP4, OGG, WebM, FLV. (Я отмечаю, что AVI также поддерживается через --recode-video
опцию.)
Если эти «лучшие» потоки являются кодеками, которые плохо размещаются, например, в контейнере mp4, youtube-dl
они упакуют их в контейнер mkv и выдадут предупреждение, которое вы видели. Напоминаем, что vlc, SMPlayer и друзья воспроизведут полученный файл mkv без проблем в хорошо настроенной системе Ubuntu ...
Однако, если вы действительно хотите получить видео самого лучшего качества и видео аудио лучшего качества, но только в контейнере mp4 (таким образом, минуя предупреждение mkv и последующий вывод контейнера Matrosk из youtube-dl
), вы можете использовать что-то вроде следующего:
youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]' URL
Очевидно, подставив значение 'URL' для адреса видео на YouTube, которое вы хотите загрузить. Такая относительно сложная командная строка может быть постоянно размещена в файле конфигурации ~/.config/youtube-dl/config
следующим образом:
-f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]'
С учетом указанных выше линии , расположенной в файле конфигурации YouTube-DL настройки станут по умолчанию для youtube-dl
и не должны быть заданы в командной строке каждый раз. (Легко обойти при необходимости , передав --ignore-config
опцию в командной строке).
Возможно множество вариантов этой командной строки ...
Ссылки:
Выберите формат:
youtube-dl -f mp4 URL
youtube-dl -f webm URL
youtube-dl -F URL //for available formats