yt-dlp: YouTube live streaming is not detected anymore

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

  • I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

Region

Brazil

Provide a description that is worded well enough to be understood

Live streaming is not detected anymore. Until yesterday, the most recent stream was selected.

Provide verbose output that clearly demonstrates the problem

  • Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
  • If using API, add 'verbose': True to YoutubeDL params instead
  • Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output

[debug] Command-line config: ['-vU', 'https://www.youtube.com/@DiaEstudio/live']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.07.06 [b532a3481] (zip)
[debug] Python 3.11.2 (CPython x86_64 64bit) - Linux-6.1.0-10-amd64-x86_64-with-glibc2.36 (OpenSSL 3.0.9 30 May 2023, glibc 2.36)
[debug] exe versions: ffmpeg 6.0 (fdk,setts), ffprobe 6.0, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.11.0, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, sqlite3-2.6.0, xattr-0.10.1
[debug] Proxy map: {}
[debug] Loaded 1855 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version: stable@2023.07.06, Current version: stable@2023.07.06
Current Build Hash: cedf44a9cf3c241520a692c1006d276e6f434d4d945727c47cb1a70d32953f4a
yt-dlp is up to date (stable@2023.07.06)
[youtube:tab] Extracting URL: https://www.youtube.com/@DiaEstudio/live
[youtube:tab] @DiaEstudio/live: Downloading webpage
[debug] [youtube:tab] Selected tab: 'streams' (live), Requested tab: 'live'
ERROR: [youtube:tab] @DiaEstudio: The channel is not currently live
  File "/home/marco/bin/yt-dlp/yt_dlp/extractor/common.py", line 710, in extract
    ie_result = self._real_extract(url)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/marco/bin/yt-dlp/yt_dlp/extractor/youtube.py", line 4603, in wrapper
    info_dict = func(self, url, smuggled_data)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/marco/bin/yt-dlp/yt_dlp/extractor/youtube.py", line 6548, in _real_extract
    raise UserNotLive(video_id=item_id)

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Reactions: 1
  • Comments: 42 (11 by maintainers)

Most upvoted comments

ytarchive has implemented parsing of the /streams tab to get the livestream https://github.com/Kethsar/ytarchive/issues/145. It’s not foolproof and could miss some streams, but that should be rare. It’s a bit annoying to implement for us since we are doing it with /live URL and not with an arg. I’ll see if it is worth it, but no promises.

@LivreAcessoPro

If the page redirects to streams now, we can only do the same. Bringing back the old functionality is out of scope since the change in on Youtube’s side.

EDIT-see also:

“Expected functionality” is whatever the website does, just with additional protection so users don’t accidentally download the entire /streams tab. #7567 (comment)

It looks like the /live page don’t exist anymore. To solve my problem, like the previous behavior, the page /streams needs to be parsed to filter the live streams and the scheduled streams, getting the oldest stream live or waiting for the nearest scheduled live (--wait-for-video option).

When the feature “autoplay” is enabled, the next live of the same channel is loaded and played. It works in the YouTube APK too.

same problem here. i am testing the live stream right now: https://www.youtube.com/@overwatchleague/live which gives me the result: ERROR: [youtube:tab] @overwatchleague: The channel is not currently live

Until yesterday, going to https://www.youtube.com/@CNNbrasil/live redirects to current live stream. Today, the same URL gives you the same content of https://www.youtube.com/@CNNbrasil/streams