Я понимаю, что эта тема немного старая, но я думаю, что ситуация несколько изменилась. Для моей цели:
- в первую очередь всегда выбирайте наилучшее доступное качество видео независимо от формата;
- но затем никогда не позволяйте аудиоформату вызывать потерю mp4 .
Ранее я использовал bestvideo+bestaudio/best
, но я считаю, что следующий вариант работает намного лучше для уменьшения mkv
, (очевидно) устранения webm
, но все же гарантирует высочайшее качество видео (не используйте эту --merge-output-format
опцию при использовании этого):
--format bestvideo+bestaudio[ext=m4a]/bestvideo+bestaudio/best
Обратите внимание, что в первом слагаемом ext
для аудио указан фильтр, а не для видео - методика, которую я не видел в вышеупомянутом обсуждении. Если это кажется задом наперед для моих заявленных целей, это может быть из-за того, что, учитывая то, что мы пытаемся убедиться, что формат видео соответствует mp4
, почему ограничение дается для аудио?
Ключ заключается в том, что каждый запасной член (разделенный косой чертой) потерпит неудачу, если какая-либо часть его требования не будет выполнена, и перейдет к следующему члену. При использовании bestvideo+bestaudio
многие случаи получения контейнера не-mp4 обнаруживаются только потому, что этот выбор формата однозначно настаивает на том bestaudio
, что может означать смешанный формат. Это потому, что bestvideo+bestaudio
команда слишком настойчива, чтобы тебя заставили mp4
.
Но что, если вы больше заботитесь о получении контейнера mp4, чем о качестве звука ? Настаивая на m4a
аудио сначала - но затем смягчаясь только на этой части, выпуская bestvideo
снова - (используя выбор формата выше), вы по существу выражаете гибкое предпочтение по mp4
сравнению с другими контейнерами; Вы, конечно , хотите, mp4
если это возможно, но не за счет снижения качества видео.
Как я уже сказал, вы можете получить некоторые из них mkv
, но их будет значительно меньше, и они будут использоваться только тогда, когда это потребуется для (предположительно) лучшего видео. И до сих пор с этой конфигурацией я вообще ничего не видел webm
, потому что что-то вроде 248 + 140 работает в итоге как mkv
.
--list-formats
и--format nn
переключатели.