From 6a72c82d95ffbeb63d5171bdc02fa46c4fb9f1e1 Mon Sep 17 00:00:00 2001 From: Leo Lam Date: Sun, 17 Apr 2016 18:13:56 -0400 Subject: [PATCH] fix issue #9157 --- youtube_dl/extractor/rai.py | 53 +++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 28 deletions(-) diff --git a/youtube_dl/extractor/rai.py b/youtube_dl/extractor/rai.py index e36ce1aa1..8c87b73b0 100644 --- a/youtube_dl/extractor/rai.py +++ b/youtube_dl/extractor/rai.py @@ -107,36 +107,33 @@ class RaiTVIE(InfoExtractor): return xml.replace(' tag elementi', '').replace('>/', ' 0 else None, - 'format_id': 'http-%d' % bitrate if bitrate > 0 else 'http', - }) - elif content_type.startswith('image/'): - thumbnails.append({ - 'url': media_url, - }) + media_url = relinker.findtext('url') + ext = determine_ext(media_url) + content_type = relinker.findtext('ct') + if ext == 'm3u8': + formats.extend(self._extract_m3u8_formats( + media_url, video_id, 'mp4', 'm3u8_native', + m3u8_id='hls', fatal=False)) + elif ext == 'f4m': + formats.extend(self._extract_f4m_formats( + media_url + '?hdcore=3.7.0&plugin=aasp-3.7.0.39.44', + video_id, f4m_id='hds', fatal=False)) + elif ext == 'stl': + has_subtitle = True + elif content_type.startswith('video/'): + bitrate = int_or_none(relinker.findtext('bitrate')) + formats.append({ + 'url': media_url, + 'tbr': bitrate if bitrate > 0 else None, + 'format_id': 'http-%d' % bitrate if bitrate > 0 else 'http', + }) + elif content_type.startswith('image/'): + thumbnails.append({ + 'url': media_url, + }) self._sort_formats(formats)