|
|
@ -10,6 +10,7 @@ from ..utils import ( |
|
|
|
unified_strdate, |
|
|
|
determine_ext, |
|
|
|
get_element_by_id, |
|
|
|
compat_str, |
|
|
|
) |
|
|
|
|
|
|
|
# There are different sources of video in arte.tv, the extraction process |
|
|
@ -191,10 +192,13 @@ class ArteTVPlus7IE(InfoExtractor): |
|
|
|
formats = sorted(formats, key=lambda f: re.match(r'VO(F|A)-STM\1', f.get('versionCode', '')) is None) |
|
|
|
# Pick the best quality |
|
|
|
def _format(format_info): |
|
|
|
quality = format_info['quality'] |
|
|
|
m_quality = re.match(r'\w*? - (\d*)p', quality) |
|
|
|
if m_quality is not None: |
|
|
|
quality = m_quality.group(1) |
|
|
|
quality = '' |
|
|
|
height = format_info.get('height') |
|
|
|
if height is not None: |
|
|
|
quality = compat_str(height) |
|
|
|
bitrate = format_info.get('bitrate') |
|
|
|
if bitrate is not None: |
|
|
|
quality += '-%d' % bitrate |
|
|
|
if format_info.get('versionCode') is not None: |
|
|
|
format_id = u'%s-%s' % (quality, format_info['versionCode']) |
|
|
|
else: |
|
|
@ -203,7 +207,7 @@ class ArteTVPlus7IE(InfoExtractor): |
|
|
|
'format_id': format_id, |
|
|
|
'format_note': format_info.get('versionLibelle'), |
|
|
|
'width': format_info.get('width'), |
|
|
|
'height': format_info.get('height'), |
|
|
|
'height': height, |
|
|
|
} |
|
|
|
if format_info['mediaType'] == u'rtmp': |
|
|
|
info['url'] = format_info['streamer'] |
|
|
|