Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

no video formats found bbc iplayer #26432

Open
steve2162 opened this issue Aug 24, 2020 · 8 comments
Open

no video formats found bbc iplayer #26432

steve2162 opened this issue Aug 24, 2020 · 8 comments

Comments

@steve2162
Copy link

@steve2162 steve2162 commented Aug 24, 2020

Checklist

  • [ x ] I'm reporting a broken site support issue
  • I've verified that I'm running youtube-dl version 2020.07.28
  • I've checked that all provided URLs are alive and playable in a browser
  • I've checked that all URLs and arguments with special characters are properly quoted or escaped
  • I've searched the bugtracker for similar bug reports including closed ones
  • I've read bugs section in FAQ

Verbose log

PASTE VERBOSE LOG HERE

/home/steve# youtube-dl --verbose https://www.bbc.co.uk/iplayer/episode/m000m2hj/the-notebook
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--verbose', u'https://www.bbc.co.uk/iplayer/episode/m000m2hj/the-notebook']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2020.07.28
[debug] Python version 2.7.17 (CPython) - Linux-4.15.0-108-generic-x86_64-with-Ubuntu-18.04-bionic
[debug] exe versions: avconv 3.4.6, avprobe 3.4.6, ffmpeg 3.4.6, ffprobe 3.4.6, phantomjs 1000, rtmpdump 2.4
[debug] Proxy map: {}
[bbc.co.uk] m000m2hj: Downloading video page
[bbc.co.uk] m000m2hj: Downloading playlist JSON
[bbc.co.uk] m000m2hg: Downloading media selection XML
ERROR: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 797, in extract_info
ie_result = ie.extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 530, in extract
ie_result = self._real_extract(url)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/bbc.py", line 592, in _real_extract
self._sort_formats(formats)
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 1350, in _sort_formats
raise ExtractorError('No video formats found')
ExtractorError: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Description

WRITE DESCRIPTION HERE
Looks like downloading from iplayer's broke. I've tried youtube-dl -U , also uninstalling/re-installing youtube-dl. Same result. The version of Ubuntu it's running on is Ubuntu 18.04.4 LTS

@FPVogel
Copy link

@FPVogel FPVogel commented Aug 25, 2020

It's most likely because you need to have authentication to access (at least) this particular requested item, meaning that you cannot watch it (neither download it) without signing in to bbc.

@splace
Copy link

@splace splace commented Aug 29, 2020

unfortunately same for me (why i'm here) but this is with me signed in and i can watch it in a browser.

youtube-dl --verbose https://www.bbc.co.uk/iplayer/episode/m000m2k7/gravity [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: ['--verbose', 'https://www.bbc.co.uk/iplayer/episode/m000m2k7/gravity'] [debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8 [debug] youtube-dl version 2020.07.28 [debug] Python version 3.7.7 (CPython) - Linux-5.6.19-158.current-x86_64-with-glibc2.2.5 [debug] exe versions: ffmpeg 4.3.1, ffprobe 4.3.1, rtmpdump 2.4 [debug] Proxy map: {'no': 'localhost,127.0.0.0/8,::1'} [bbc.co.uk] m000m2k7: Downloading video page [bbc.co.uk] m000m2k7: Downloading playlist JSON [bbc.co.uk] m000m2k6: Downloading media selection XML ERROR: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output. Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/youtube_dl/YoutubeDL.py", line 797, in extract_info ie_result = ie.extract(url) File "/usr/lib/python3.7/site-packages/youtube_dl/extractor/common.py", line 530, in extract ie_result = self._real_extract(url) File "/usr/lib/python3.7/site-packages/youtube_dl/extractor/bbc.py", line 592, in _real_extract self._sort_formats(formats) File "/usr/lib/python3.7/site-packages/youtube_dl/extractor/common.py", line 1350, in _sort_formats raise ExtractorError('No video formats found') youtube_dl.utils.ExtractorError: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see https://yt-dl.org/update on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

@splace
Copy link

@splace splace commented Aug 29, 2020

BTW other stuff is fine.

but, i think, BBC uses a range of different techniques/providers/formats so it might be one particular setup thats the issue.

@NamelessFTW
Copy link

@NamelessFTW NamelessFTW commented Sep 13, 2020

Hi,
I've also encountered this problem and I found the issue with the code. I think the problematic section of code is

try:
return self._download_media_selector_url(
mediaselector_url % programme_id, programme_id)

self._MEDIASELECTOR_URLS contains multiple URLs, but this section of code only ever uses the first of the URLs, and never the second.
I've fixed it by changing the code to

            try:
                formats, subtitles = self._download_media_selector_url(
                    mediaselector_url % programme_id, programme_id)
                if len(formats) != 0:
                    return (formats, subtitles)
                return (formats, subtitles)

I can confirm that this has fixed the issue for both links in this issue ("Gravity", and "The Notebook").
In order to apply the fix, you need to find where the bbc.py file is located, find line 354, and replace the code with what I have above.

@ProgrammerAKL
Copy link

@ProgrammerAKL ProgrammerAKL commented Sep 17, 2020

Please check the URL https://www.bbc.co.uk/programmes/b00sbjzv to see which fix will resolve the 'No video formats found' problem there.

@NamelessFTW
Copy link

@NamelessFTW NamelessFTW commented Sep 17, 2020

Please check the URL https://www.bbc.co.uk/programmes/b00sbjzv to see which fix will resolve the 'No video formats found' problem there.

@ProgrammerAKL The fix that I outlined above also fixes the issue for that URL.

@splace
Copy link

@splace splace commented Sep 25, 2020

@ProgrammerAKL

tried but not fixed here.

@dirkf
Copy link

@dirkf dirkf commented Oct 13, 2020

Fixed by #26821.

Thanks also to @ProgrammerAKL who diagnosed the problem separately.

My patch tries to retrieve and merge formats and subtitles from any parseable playlist from the mediaselector URL list. Comments, tests welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
6 participants
You can’t perform that action at this time.