summary refs log tree commit diff
diff options
context:
space:
mode:
authorProtuhj <ihatespam234@gmail.com>2017-05-20 14:11:37 -0400
committerSergey M <dstftw@gmail.com>2017-05-21 01:11:37 +0700
commitfdc20f87a62ff973b97c9ea2b0e68b394960b8fa (patch)
tree4204d66b5ec4314a7d91f7186921f3943b314d0c
parent35a2d221a35caf8aad533b5f8ef6d7b12acd4e41 (diff)
downloadyoutube-dl-fdc20f87a62ff973b97c9ea2b0e68b394960b8fa.tar.gz
youtube-dl-fdc20f87a62ff973b97c9ea2b0e68b394960b8fa.tar.xz
youtube-dl-fdc20f87a62ff973b97c9ea2b0e68b394960b8fa.zip
[youtube] Fix DASH manifest signature decryption (closes #8944)
-rw-r--r--youtube_dl/extractor/youtube.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py
index 44a39282f..ae832cac5 100644
--- a/youtube_dl/extractor/youtube.py
+++ b/youtube_dl/extractor/youtube.py
@@ -1435,6 +1435,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
         else:
             age_gate = False
             video_info = None
+            sts = ''
             # Try looking directly into the video webpage
             ytplayer_config = self._get_ytplayer_config(video_id, video_webpage)
             if ytplayer_config:
@@ -1451,6 +1452,7 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
                         args['ypc_vid'], YoutubeIE.ie_key(), video_id=args['ypc_vid'])
                 if args.get('livestream') == '1' or args.get('live_playback') == 1:
                     is_live = True
+                sts = ytplayer_config.get('sts', '')
             if not video_info or self._downloader.params.get('youtube_include_dash_manifest', True):
                 # We also try looking in get_video_info since it may contain different dashmpd
                 # URL that points to a DASH manifest with possibly different itag set (some itags
@@ -1461,8 +1463,8 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
                 self.report_video_info_webpage_download(video_id)
                 for el_type in ['&el=info', '&el=embedded', '&el=detailpage', '&el=vevo', '']:
                     video_info_url = (
-                        '%s://www.youtube.com/get_video_info?&video_id=%s%s&ps=default&eurl=&gl=US&hl=en'
-                        % (proto, video_id, el_type))
+                        '%s://www.youtube.com/get_video_info?&video_id=%s%s&ps=default&eurl=&gl=US&hl=en&sts=%s'
+                        % (proto, video_id, el_type, sts))
                     video_info_webpage = self._download_webpage(
                         video_info_url,
                         video_id, note=False,