]> jfr.im git - yt-dlp.git/blobdiff - youtube_dl/extractor/youtube.py
[common] Add _extract_dash_manifest_formats
[yt-dlp.git] / youtube_dl / extractor / youtube.py
index a2f7760502d3771335fdc88496e443ed67f6ea2b..d6fef39e9e4b4295382681f21b8c01a1a96cb7bf 100644 (file)
@@ -1472,14 +1472,10 @@ def decrypt_sig(mobj):
                         return '/signature/%s' % dec_s
 
                     dash_manifest_url = re.sub(r'/s/([a-fA-F0-9\.]+)', decrypt_sig, dash_manifest_url)
-                    dash_doc = self._download_xml(
-                        dash_manifest_url, video_id,
-                        note='Downloading DASH manifest',
-                        errnote='Could not download DASH manifest',
-                        fatal=dash_mpd_fatal)
-
-                    for df in self._parse_dash_manifest(
-                            dash_doc, namespace='urn:mpeg:DASH:schema:MPD:2011', formats_dict=self._formats):
+
+                    for df in self._extract_dash_manifest_formats(
+                            dash_manifest_url, video_id, fatal=dash_mpd_fatal,
+                            namespace='urn:mpeg:DASH:schema:MPD:2011', formats_dict=self._formats):
                         # Do not overwrite DASH format found in some previous DASH manifest
                         if df['format_id'] not in dash_formats:
                             dash_formats[df['format_id']] = df