'timestamp': parse_iso8601(info.get('recorded_at')),
'view_count': int_or_none(info.get('views')),
'is_live': is_live,
+ 'was_live': True,
}
def _extract_moments(self, info, item_id):
if vod_id[0] != 'v':
vod_id = 'v%s' % vod_id
thumbnail = url_or_none(info.get('previewThumbnailURL'))
+ is_live = None
if thumbnail:
- for p in ('width', 'height'):
- thumbnail = thumbnail.replace('{%s}' % p, '0')
+ if thumbnail.endswith('/404_processing_{width}x{height}.png'):
+ is_live, thumbnail = True, None
+ else:
+ is_live = False
+ for p in ('width', 'height'):
+ thumbnail = thumbnail.replace('{%s}' % p, '0')
return {
'id': vod_id,
'timestamp': unified_timestamp(info.get('publishedAt')),
'view_count': int_or_none(info.get('viewCount')),
'chapters': list(self._extract_moments(info, item_id)),
+ 'is_live': is_live,
+ 'was_live': True,
}
def _real_extract(self, url):