diff options
Diffstat (limited to 'youtube_dl/extractor/vzaar.py')
-rw-r--r-- | youtube_dl/extractor/vzaar.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/youtube_dl/extractor/vzaar.py b/youtube_dl/extractor/vzaar.py index b43975ead..f02e8530b 100644 --- a/youtube_dl/extractor/vzaar.py +++ b/youtube_dl/extractor/vzaar.py @@ -87,12 +87,15 @@ class VzaarIE(InfoExtractor): usp = video_data.get('usp') if video_data.get('uspEnabled') and isinstance(video_guid, compat_str) and isinstance(usp, dict): hls_aes = video_data.get('hlsAes') - m3u8_url = ('http://fable.vzaar.com/v5/usp%s/%s/%s.ism/.m3u8?' - % ('aes' if hls_aes else '', video_guid, video_id)) + '&'.join( - '%s=%s' % (k, v) for k, v in usp.items()) - formats.extend(self._extract_m3u8_formats( - m3u8_url, video_id, 'mp4', 'm3u8' if hls_aes else 'm3u8_native', - m3u8_id='hls', fatal=False)) + qs = '&'.join('%s=%s' % (k, v) for k, v in usp.items()) + url_templ = 'http://%%s.vzaar.com/v5/usp%s/%s/%s.ism%%s?' % ('aes' if hls_aes else '', video_guid, video_id) + m3u8_formats = self._extract_m3u8_formats( + url_templ % ('fable', '/.m3u8') + qs, video_id, 'mp4', 'm3u8_native', + m3u8_id='hls', fatal=False) + if hls_aes: + for f in m3u8_formats: + f['_decryption_key_url'] = url_templ % ('goose', '') + qs + formats.extend(m3u8_formats) self._sort_formats(formats) |