[extractor/common] Convert ISM manifest to unicode before processing on python 2...
[youtube-dl] / youtube_dl / extractor / common.py
index 04d676378ba6cbe251558e427b05553ba573edea..ab7d473d049c4aaf95e9e98b82b5cb29cb7bb60d 100644 (file)
@@ -1766,6 +1766,19 @@ class InfoExtractor(object):
                         # the same GROUP-ID
                         f['acodec'] = 'none'
                 formats.append(f)
+
+                # for DailyMotion
+                progressive_uri = last_stream_inf.get('PROGRESSIVE-URI')
+                if progressive_uri:
+                    http_f = f.copy()
+                    del http_f['manifest_url']
+                    http_f.update({
+                        'format_id': f['format_id'].replace('hls-', 'http-'),
+                        'protocol': 'http',
+                        'url': progressive_uri,
+                    })
+                    formats.append(http_f)
+
                 last_stream_inf = {}
         return formats
 
@@ -2328,7 +2341,7 @@ class InfoExtractor(object):
             return []
         ism_doc, urlh = res
 
-        return self._parse_ism_formats(ism_doc, urlh.geturl(), ism_id)
+        return self._parse_ism_formats(ism_doc, compat_str(urlh.geturl()), ism_id)
 
     def _parse_ism_formats(self, ism_doc, ism_url, ism_id=None):
         """