From a6673a8e82276ea529c1773ed09e5bc4a22e822a Mon Sep 17 00:00:00 2001 From: sepro Date: Sun, 12 Oct 2025 20:30:17 +0200 Subject: [PATCH] Fix `prefer-vp9-sort` compat option (#14603) Closes #14602 Authored by: seproDev --- yt_dlp/__init__.py | 2 +- yt_dlp/extractor/youtube/_video.py | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/yt_dlp/__init__.py b/yt_dlp/__init__.py index 09c022fa0e..224679e53b 100644 --- a/yt_dlp/__init__.py +++ b/yt_dlp/__init__.py @@ -155,7 +155,7 @@ def set_compat_opts(opts): if 'format-sort' in opts.compat_opts: opts.format_sort.extend(FormatSorter.ytdl_default) elif 'prefer-vp9-sort' in opts.compat_opts: - opts.format_sort.extend(FormatSorter._prefer_vp9_sort) + FormatSorter.default = FormatSorter._prefer_vp9_sort if 'mtime-by-default' in opts.compat_opts: if opts.updatetime is None: diff --git a/yt_dlp/extractor/youtube/_video.py b/yt_dlp/extractor/youtube/_video.py index 9ef7f14dfa..864121e0a3 100644 --- a/yt_dlp/extractor/youtube/_video.py +++ b/yt_dlp/extractor/youtube/_video.py @@ -4110,7 +4110,9 @@ class YoutubeIE(YoutubeBaseInfoExtractor): else 'video'), 'release_timestamp': live_start_time, '_format_sort_fields': ( # source_preference is lower for potentially damaged formats - 'quality', 'res', 'fps', 'hdr:12', 'source', 'vcodec', 'channels', 'acodec', 'lang', 'proto'), + 'quality', 'res', 'fps', 'hdr:12', 'source', + 'vcodec:vp9.2' if 'prefer-vp9-sort' in self.get_param('compat_opts', []) else 'vcodec', + 'channels', 'acodec', 'lang', 'proto'), } def get_lang_code(track):