From: dirkf Date: Thu, 6 Apr 2023 18:42:36 +0000 (+0100) Subject: [core] Avoid deepcopy of ctx dict (fix f35b757) (Pt 2) X-Git-Url: http://git.oshgnacknak.de/?a=commitdiff_plain;h=f8253a528935f78e1a3b724db8c1f0089f99314a;p=youtube-dl [core] Avoid deepcopy of ctx dict (fix f35b757) (Pt 2) --- diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py index 2c0d4926c..927b19417 100755 --- a/youtube_dl/YoutubeDL.py +++ b/youtube_dl/YoutubeDL.py @@ -1389,11 +1389,10 @@ class YoutubeDL(object): 'abr': formats_info[1].get('abr'), 'ext': output_ext, } - video_selector, audio_selector = map(_build_selector_function, selector.selector) def selector_function(ctx): - for pair in itertools.product( - video_selector(copy.deepcopy(ctx)), audio_selector(copy.deepcopy(ctx))): + selector_fn = lambda x: _build_selector_function(x)(ctx) + for pair in itertools.product(*map(selector_fn, selector.selector)): yield _merge(pair) filters = [self._build_format_filter(f) for f in selector.filters]