The following command works for me (meaning it returns JSON data for the video):
yt-dlp.exe https://www.youtube.com/watch?v=1C0ZtmBlL-s --skip-download --dump-single-json --no-check-certificate --restrict-filenames
However, the same command but for a video which has yet to "premiere" (it's in "upcoming" mode) does not return any JSON data! It outputs null and error-logs an English text saying: "Premieres in 3 hours", which is useless to me:
yt-dlp.exe https://www.youtube.com/watch?v=bNWB7wu9hjE --skip-download --dump-single-json --no-check-certificate --restrict-filenames
I need to be able to see the timestamp when it premieres, before it premieres, in order to automatically insert a reminder for myself. This information is available on the YouTube webpage, so the information does exist: "isUpcoming":true and "scheduledStartTime"
Furthermore, yt-dlp literally has a live_status property in the JSON output, which can be is_upcoming, according to its manual, so it makes no sense that my command doesn't return anything when the video is "upcoming". The data is available, and yt-dlp seemingly supports it. So why is the output null when the video is in "upcoming" state?
PS: Depending on when you read this, the video in the second link may no longer be "upcoming". It's upcoming for 32 minutes more at the time of publishing this.