[konserthusetplay] Add support for hls formats (closes #11823)
authorSergey M․ <dstftw@gmail.com>
Tue, 24 Jan 2017 15:55:49 +0000 (22:55 +0700)
committerSergey M․ <dstftw@gmail.com>
Tue, 24 Jan 2017 15:55:49 +0000 (22:55 +0700)
youtube_dl/extractor/konserthusetplay.py

index 55291c66ff066733a8610abe5acc65b1e0daf7f3..7e6ea96964e6577d20b97ddaad76b8c1e3e62adc 100644 (file)
@@ -3,6 +3,7 @@ from __future__ import unicode_literals
 
 from .common import InfoExtractor
 from ..utils import (
+    determine_ext,
     float_or_none,
     int_or_none,
 )
@@ -42,12 +43,18 @@ class KonserthusetPlayIE(InfoExtractor):
         player_config = media['playerconfig']
         playlist = player_config['playlist']
 
-        source = next(f for f in playlist if f.get('bitrates'))
+        source = next(f for f in playlist if f.get('bitrates') or f.get('provider'))
 
         FORMAT_ID_REGEX = r'_([^_]+)_h264m\.mp4'
 
         formats = []
 
+        m3u8_url = source.get('url')
+        if m3u8_url and determine_ext(m3u8_url) == 'm3u8':
+            formats.extend(self._extract_m3u8_formats(
+                m3u8_url, video_id, 'mp4', entry_protocol='m3u8_native',
+                m3u8_id='hls', fatal=False))
+
         fallback_url = source.get('fallbackUrl')
         fallback_format_id = None
         if fallback_url: