|
|
|
@ -151,6 +151,7 @@ class FranceTVIE(InfoExtractor):
|
|
|
|
|
videos.append(fallback_info['video'])
|
|
|
|
|
|
|
|
|
|
formats = []
|
|
|
|
|
subtitles = {}
|
|
|
|
|
for video in videos:
|
|
|
|
|
video_url = video.get('url')
|
|
|
|
|
if not video_url:
|
|
|
|
@ -171,10 +172,12 @@ class FranceTVIE(InfoExtractor):
|
|
|
|
|
sign(video_url, format_id) + '&hdcore=3.7.0&plugin=aasp-3.7.0.39.44',
|
|
|
|
|
video_id, f4m_id=format_id, fatal=False))
|
|
|
|
|
elif ext == 'm3u8':
|
|
|
|
|
formats.extend(self._extract_m3u8_formats(
|
|
|
|
|
m3u8_fmts, m3u8_subs = self._extract_m3u8_formats_and_subtitles(
|
|
|
|
|
sign(video_url, format_id), video_id, 'mp4',
|
|
|
|
|
entry_protocol='m3u8_native', m3u8_id=format_id,
|
|
|
|
|
fatal=False))
|
|
|
|
|
fatal=False)
|
|
|
|
|
formats.extend(m3u8_fmts)
|
|
|
|
|
subtitles = self._merge_subtitles(subtitles, m3u8_subs)
|
|
|
|
|
elif ext == 'mpd':
|
|
|
|
|
formats.extend(self._extract_mpd_formats(
|
|
|
|
|
sign(video_url, format_id), video_id, mpd_id=format_id, fatal=False))
|
|
|
|
@ -199,13 +202,12 @@ class FranceTVIE(InfoExtractor):
|
|
|
|
|
title += ' - %s' % subtitle
|
|
|
|
|
title = title.strip()
|
|
|
|
|
|
|
|
|
|
subtitles = {}
|
|
|
|
|
subtitles_list = [{
|
|
|
|
|
'url': subformat['url'],
|
|
|
|
|
'ext': subformat.get('format'),
|
|
|
|
|
} for subformat in info.get('subtitles', []) if subformat.get('url')]
|
|
|
|
|
if subtitles_list:
|
|
|
|
|
subtitles['fr'] = subtitles_list
|
|
|
|
|
subtitles.setdefault('fr', []).extend(
|
|
|
|
|
[{
|
|
|
|
|
'url': subformat['url'],
|
|
|
|
|
'ext': subformat.get('format'),
|
|
|
|
|
} for subformat in info.get('subtitles', []) if subformat.get('url')]
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
'id': video_id,
|
|
|
|
|