瀏覽代碼

[wistia] Improve hls support

Sergey M․ 9 年之前
父節點
當前提交
45f160a43c
共有 1 個文件被更改,包括 8 次插入1 次删除
  1. 8 1
      youtube_dl/extractor/wistia.py

+ 8 - 1
youtube_dl/extractor/wistia.py

@@ -27,6 +27,10 @@ class WistiaIE(InfoExtractor):
     }, {
     }, {
         'url': 'wistia:sh7fpupwlt',
         'url': 'wistia:sh7fpupwlt',
         'only_matching': True,
         'only_matching': True,
+    }, {
+        # with hls video
+        'url': 'wistia:807fafadvk',
+        'only_matching': True,
     }]
     }]
 
 
     def _real_extract(self, url):
     def _real_extract(self, url):
@@ -63,6 +67,8 @@ class WistiaIE(InfoExtractor):
                     'height': int_or_none(a.get('height')),
                     'height': int_or_none(a.get('height')),
                 })
                 })
             else:
             else:
+                aext = a.get('ext')
+                is_m3u8 = a.get('container') == 'm3u8' or aext == 'm3u8'
                 formats.append({
                 formats.append({
                     'format_id': atype,
                     'format_id': atype,
                     'url': aurl,
                     'url': aurl,
@@ -73,7 +79,8 @@ class WistiaIE(InfoExtractor):
                     'filesize': int_or_none(a.get('size')),
                     'filesize': int_or_none(a.get('size')),
                     'vcodec': a.get('codec'),
                     'vcodec': a.get('codec'),
                     'container': a.get('container'),
                     'container': a.get('container'),
-                    'ext': a.get('ext'),
+                    'ext': 'mp4' if is_m3u8 else aext,
+                    'protocol': 'm3u8' if is_m3u8 else None,
                     'preference': 1 if atype == 'original' else None,
                     'preference': 1 if atype == 'original' else None,
                 })
                 })