ソースを参照

[gamespot] lower the preference of http formats(#14652)

Remita Amine 7 年 前
コミット
d4e31b72b9
2 ファイル変更4 行追加3 行削除
  1. 1 1
      youtube_dl/extractor/gamespot.py
  2. 3 2
      youtube_dl/extractor/once.py

+ 1 - 1
youtube_dl/extractor/gamespot.py

@@ -109,7 +109,7 @@ class GameSpotIE(OnceIE):
             if onceux_url:
                 formats.extend(self._extract_once_formats(re.sub(
                     r'https?://[^/]+', 'http://once.unicornmedia.com', onceux_url),
-                    skip_http_formats=True))
+                    http_formats_preference=-1))
 
         if not formats:
             for quality in ['sd', 'hd']:

+ 3 - 2
youtube_dl/extractor/once.py

@@ -11,7 +11,7 @@ class OnceIE(InfoExtractor):
     ADAPTIVE_URL_TEMPLATE = 'http://once.unicornmedia.com/now/master/playlist/%s/%s/%s/content.m3u8'
     PROGRESSIVE_URL_TEMPLATE = 'http://once.unicornmedia.com/now/media/progressive/%s/%s/%s/%s/content.mp4'
 
-    def _extract_once_formats(self, url, skip_http_formats=False):
+    def _extract_once_formats(self, url, http_formats_preference=None):
         domain_id, application_id, media_item_id = re.match(
             OnceIE._VALID_URL, url).groups()
         formats = self._extract_m3u8_formats(
@@ -27,7 +27,7 @@ class OnceIE(InfoExtractor):
             rendition_id = self._search_regex(
                 r'/now/media/playlist/[^/]+/[^/]+/([^/]+)',
                 adaptive_format['url'], 'redition id', default=None)
-            if rendition_id and not skip_http_formats:
+            if rendition_id:
                 progressive_format = adaptive_format.copy()
                 progressive_format.update({
                     'url': self.PROGRESSIVE_URL_TEMPLATE % (
@@ -35,6 +35,7 @@ class OnceIE(InfoExtractor):
                     'format_id': adaptive_format['format_id'].replace(
                         'hls', 'http'),
                     'protocol': 'http',
+                    'preference': http_formats_preference,
                 })
                 progressive_formats.append(progressive_format)
         self._check_formats(progressive_formats, media_item_id)