aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLesmiscore <nao20010128@gmail.com>2022-09-24 18:30:58 +0900
committerGitHub <noreply@github.com>2022-09-24 18:30:58 +0900
commit5c8b2ee9ecf8773eb463b4ae218f8313a6626b2f (patch)
treea52b0d6d958dd7e34abadea5eb112448fc42de34
parentfaf7863bb0898c4a7972cd77b12a619bbc79c914 (diff)
downloadhypervideo-pre-5c8b2ee9ecf8773eb463b4ae218f8313a6626b2f.tar.lz
hypervideo-pre-5c8b2ee9ecf8773eb463b4ae218f8313a6626b2f.tar.xz
hypervideo-pre-5c8b2ee9ecf8773eb463b4ae218f8313a6626b2f.zip
[extractor/RUTV] Fix warnings for livestreams (#5016)
Authored by: Lesmiscore
-rw-r--r--yt_dlp/extractor/rutv.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/yt_dlp/extractor/rutv.py b/yt_dlp/extractor/rutv.py
index 0b07dc5ad..75da01f7d 100644
--- a/yt_dlp/extractor/rutv.py
+++ b/yt_dlp/extractor/rutv.py
@@ -141,7 +141,7 @@ class RUTVIE(InfoExtractor):
if media['errors']:
raise ExtractorError('%s said: %s' % (self.IE_NAME, media['errors']), expected=True)
- view_count = playlist.get('count_views')
+ view_count = int_or_none(playlist.get('count_views'))
priority_transport = playlist['priority_transport']
thumbnail = media['picture']
@@ -152,6 +152,7 @@ class RUTVIE(InfoExtractor):
duration = int_or_none(media.get('duration'))
formats = []
+ subtitles = {}
for transport, links in media['sources'].items():
for quality, url in links.items():
@@ -171,8 +172,10 @@ class RUTVIE(InfoExtractor):
'vbr': str_to_int(quality),
}
elif transport == 'm3u8':
- formats.extend(self._extract_m3u8_formats(
- url, video_id, 'mp4', quality=preference, m3u8_id='hls'))
+ fmt, subs = self._extract_m3u8_formats_and_subtitles(
+ url, video_id, 'mp4', quality=preference, m3u8_id='hls')
+ formats.extend(fmt)
+ self._merge_subtitles(subs, target=subtitles)
continue
else:
fmt = {
@@ -186,7 +189,7 @@ class RUTVIE(InfoExtractor):
})
formats.append(fmt)
- self._sort_formats(formats)
+ self._sort_formats(formats, ('source', ))
return {
'id': video_id,
@@ -196,5 +199,6 @@ class RUTVIE(InfoExtractor):
'view_count': view_count,
'duration': duration,
'formats': formats,
+ 'subtitles': subtitles,
'is_live': is_live,
}