[livestream] Properly build smil URLs (#8794)
authorSergey M․ <dstftw@gmail.com>
Wed, 9 Mar 2016 17:11:09 +0000 (23:11 +0600)
committerSergey M․ <dstftw@gmail.com>
Wed, 9 Mar 2016 17:11:09 +0000 (23:11 +0600)
youtube_dl/extractor/livestream.py

index 9884362261aa4deab85f8e25718feaaa7a07afce..eada7c299238953baa9fd3d8219b2754aa7f9356 100644 (file)
@@ -14,6 +14,7 @@ from ..utils import (
     xpath_with_ns,
     xpath_text,
     orderedSet,
+    update_url_query,
     int_or_none,
     float_or_none,
     parse_iso8601,
@@ -72,7 +73,10 @@ class LivestreamIE(InfoExtractor):
         for vn in video_nodes:
             tbr = int_or_none(vn.attrib.get('system-bitrate'), 1000)
             furl = (
-                '%s%s?v=3.0.3&fp=WIN%%2014,0,0,145' % (base, vn.attrib['src']))
+                update_url_query(compat_urlparse.urljoin(base, vn.attrib['src']), {
+                    'v': '3.0.3',
+                    'fp': 'WIN% 14,0,0,145',
+                }))
             if 'clipBegin' in vn.attrib:
                 furl += '&ssek=' + vn.attrib['clipBegin']
             formats.append({