1
0
mirror of https://github.com/l1ving/youtube-dl synced 2020-11-18 19:53:54 -08:00

[radiocanada] Fix potential crashes when bitrates aren't available.

This commit is contained in:
Alexandre Huot 2019-01-20 19:36:57 -05:00
parent 8bd98003a4
commit 11cefd54b7

View File

@ -118,8 +118,15 @@ class RadioCanadaIE(InfoExtractor):
continue continue
ext = determine_ext(v_url) ext = determine_ext(v_url)
if ext == 'm3u8': if ext == 'm3u8':
formats.extend(self._extract_m3u8_formats( m3u8_formats = self._extract_m3u8_formats(
v_url, video_id, 'mp4', m3u8_id='hls', fatal=False)) v_url, video_id, 'mp4', m3u8_id='hls', fatal=False)
if not m3u8_formats:
bitrates = map(lambda url: url.get("bitrate"), xpath_element(v_data, "bitrates").findall("url"))
for bitrate in bitrates:
bitrate_url = re.sub(r"(?<=_\,).+?(?=\,\.mp4)", bitrate, v_url)
m3u8_formats.extend(self._extract_m3u8_formats(
bitrate_url, video_id, 'mp4', m3u8_id='hls', fatal=False))
formats.extend(m3u8_formats)
elif ext == 'f4m': elif ext == 'f4m':
formats.extend(self._extract_f4m_formats( formats.extend(self._extract_f4m_formats(
v_url, video_id, f4m_id='hds', fatal=False)) v_url, video_id, f4m_id='hds', fatal=False))