[ketnet] Extract mzsource formats (#10770)

pull/10760/merge
Sergey M․ 2016-09-28 22:58:25 +07:00
parent 8bfda726c2
commit f533490bb7
No known key found for this signature in database
GPG Key ID: 2C393E0F18A9236D
1 changed files with 23 additions and 3 deletions

View File

@ -21,6 +21,10 @@ class KetnetIE(InfoExtractor):
}, { }, {
'url': 'https://www.ketnet.be/achter-de-schermen/sien-repeteert-voor-stars-for-life', 'url': 'https://www.ketnet.be/achter-de-schermen/sien-repeteert-voor-stars-for-life',
'only_matching': True, 'only_matching': True,
}, {
# mzsource, geo restricted to Belgium
'url': 'https://www.ketnet.be/kijken/nachtwacht/de-bermadoe',
'only_matching': True,
}] }]
def _real_extract(self, url): def _real_extract(self, url):
@ -36,9 +40,25 @@ class KetnetIE(InfoExtractor):
title = config['title'] title = config['title']
formats = self._extract_m3u8_formats( formats = []
config['source']['hls'], video_id, 'mp4', for source_key in ('', 'mz'):
entry_protocol='m3u8_native', m3u8_id='hls') source = config.get('%ssource' % source_key)
if not isinstance(source, dict):
continue
for format_id, format_url in source.items():
if format_id == 'hls':
formats.extend(self._extract_m3u8_formats(
format_url, video_id, 'mp4',
entry_protocol='m3u8_native', m3u8_id=format_id,
fatal=False))
elif format_id == 'hds':
formats.extend(self._extract_f4m_formats(
format_url, video_id, f4m_id=format_id, fatal=False))
else:
formats.append({
'url': format_url,
'format_id': format_id,
})
self._sort_formats(formats) self._sort_formats(formats)
return { return {