newest / best format would be AV1, but my computer doesn’t support it completely. VP9 is completely supported.
the command I’ve been using: yt-dlp -f bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] -S height:1080 --all-subs --no-warnings -v https://www.youtube.com/watchx
this command downloads the best available video up to 1080p, but if the best video format available is AV1, it will download it. I need a command that downloads the best video but up to VP9.
Help appreciated.
Honestly, AV1 software decode isn’t that bad on most recent hardware. My desktop with 2018 hardware does it just fine, and so does my 2023 laptop.
I learned the VP9 sort after I saw how randomly abysmal the encoding is for AV1.
Just look at these numbers:

and a direct comparison, same frame from AV1:

and then VP9:

use --compat-options prefer-vp9-sort
yt-dlp -f bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] -S height:1080 --compat-options prefer-vp9-sort --all-subs --no-warnings -v https://www.youtube.com/watchxSeems like a job for
ffmpeg. You may want to look into post-processing options ofyt-dlp.I think you would want to include
[]somewhere in your format specifications. Let me try it and see.Okay looks like your format spec should look something like
'bv*[ext=mp4][vcodec!^=av01]+ba[ext=m4a]/b[ext=mp4][vcodec!^=av01]'. Single quotes needed to keep shell expansion from fighting me, not sure if that will be an issue for you. You may have intended this, but the extension restriction does mean that you’ll sometimes skip “better” formats like VP9 if they are webms or something, and you can specify an output mux if that is what you are trying to achieve.




