瀏覽代碼

[generic] extract dash formats detected using content type

remitamine 9 年之前
父節點
當前提交
bcbbb98bfe
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      youtube_dl/extractor/generic.py

+ 3 - 1
youtube_dl/extractor/generic.py

@@ -1229,13 +1229,15 @@ class GenericIE(InfoExtractor):
 
 
         # Check for direct link to a video
         # Check for direct link to a video
         content_type = head_response.headers.get('Content-Type', '')
         content_type = head_response.headers.get('Content-Type', '')
-        m = re.match(r'^(?P<type>audio|video|application(?=/(?:ogg$|(?:vnd\.apple\.|x-)?mpegurl)))/(?P<format_id>.+)$', content_type)
+        m = re.match(r'^(?P<type>audio|video|application(?=/(?:ogg$|dash\+xml|(?:vnd\.apple\.|x-)?mpegurl)))/(?P<format_id>.+)$', content_type)
         if m:
         if m:
             upload_date = unified_strdate(
             upload_date = unified_strdate(
                 head_response.headers.get('Last-Modified'))
                 head_response.headers.get('Last-Modified'))
             formats = []
             formats = []
             if m.group('format_id').endswith('mpegurl'):
             if m.group('format_id').endswith('mpegurl'):
                 formats = self._extract_m3u8_formats(url, video_id, 'mp4')
                 formats = self._extract_m3u8_formats(url, video_id, 'mp4')
+            elif m.group('format_id').startswith('dash+xml'):
+                formats = self._extract_mpd_formats(url, video_id)
             else:
             else:
                 formats = [{
                 formats = [{
                     'format_id': m.group('format_id'),
                     'format_id': m.group('format_id'),