diff --git a/yt_dlp/extractor/youtube.py b/yt_dlp/extractor/youtube.py index 8ecc34a89..1233cc399 100644 --- a/yt_dlp/extractor/youtube.py +++ b/yt_dlp/extractor/youtube.py @@ -2604,6 +2604,7 @@ def feed_entry(name): or microformat.get('lengthSeconds')) \ or parse_duration(search_meta('duration')) is_live = video_details.get('isLive') + is_upcoming = video_details.get('isUpcoming') owner_profile_url = microformat.get('ownerProfileUrl') info = { @@ -2729,7 +2730,7 @@ def process_language(container, base_url, lang_code, sub_name, query): 'url': 'https://www.youtube.com/watch?v=%s' % video_id, # url is needed to set cookies 'video_id': video_id, 'ext': 'json', - 'protocol': 'youtube_live_chat' if is_live else 'youtube_live_chat_replay', + 'protocol': 'youtube_live_chat' if is_live or is_upcoming else 'youtube_live_chat_replay', }] except (KeyError, IndexError, TypeError): pass