From ddac94be859503e2a3456a338f53f4795a7bd6a4 Mon Sep 17 00:00:00 2001 From: bashonly Date: Mon, 24 Mar 2025 06:19:46 -0500 Subject: [PATCH] remove nested func Authored by: bashonly --- yt_dlp/extractor/common.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/yt_dlp/extractor/common.py b/yt_dlp/extractor/common.py index 2e52384574..987d3dd3e2 100644 --- a/yt_dlp/extractor/common.py +++ b/yt_dlp/extractor/common.py @@ -2319,21 +2319,19 @@ class InfoExtractor: traverse_obj(formats, lambda _, v: v.get('vcodec') != 'none' and v['_audio_group_id']), key=lambda x: (x.get('tbr') or 0, x.get('width') or 0))) audio_preference_func = qualities(audio_groups_by_quality) - - def quality_note(audio_group_id): - return { - audio_groups_by_quality[0]: 'low', - audio_groups_by_quality[-1]: 'high', - }.get(audio_group_id) if len(audio_groups_by_quality) > 1 else None + audio_quality_map = { + audio_groups_by_quality[0]: 'low', + audio_groups_by_quality[-1]: 'high', + } if len(audio_groups_by_quality) > 1 else {} for fmt in traverse_obj(formats, lambda _, v: '_audio_group_id' in v): audio_group_id = fmt.pop('_audio_group_id') - if audio_group_id is None or fmt.get('vcodec') != 'none': + if not audio_quality_map or audio_group_id is None or fmt.get('vcodec') != 'none': continue # Use source_preference since quality and preference are set by params fmt['source_preference'] = audio_preference_func(audio_group_id) fmt['format_note'] = join_nonempty( - fmt.get('format_note'), quality_note(audio_group_id), delim=', ') + fmt.get('format_note'), audio_quality_map.get(audio_group_id), delim=', ') return formats, subtitles