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

[bbc] Improve iPlayer extraction for audio description #28540

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

dirkf
Copy link
Contributor

@dirkf dirkf commented Mar 25, 2021

Please follow the guide below

  • You will be asked some questions, please read them carefully and answer honestly
  • Put an x into all the boxes [ ] relevant to your pull request (like that [x])
  • Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

  • I am the original author of this code and I am willing to release it under Unlicense
  • I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

  • Bug fix
  • Improvement
  • New extractor
  • New feature

Description of your pull request and other information

In issue #22986, the reporter noted that the audio-described version of an iPlayer programme was not retrieved when using the AD URL. This seems wrong.

The extractor used playlist data from http://www.bbc.co.uk/programmes/PID/playlist.json, but this doesn't include the AD version. @Vangelis66 (thanks) pointed out some places where playlist data including the AD version might be found.

On investigation it seems that the new React/Redux version of iPlayer sends JS that sets the application state from JSON, and this JSON includes all the data that is needed for iPlayer extraction.

This technique might render the tactics previously implemented in the extractor obsolete, but I left them in as fall-backs.

Instead of fetching the iPlayer page from the given URL, it would be possible to get similar data from IBL (NB slightly different keys, eg REDUX episode vs IBL episodes). However, the other (possibly obsolete) extraction tactics require the page, so at the moment the REDUX data is available with no further requests.

Resolves #22986.

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

Successfully merging this pull request may close these issues.

Audio Description from BBC iPlayer Not Downloading
2 participants