Skip to content

plugins.vimeo: fix missing HLS/DASH API results #5854

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

Merged

Conversation

bastimeyer
Copy link
Member

Fixes #5702

HLS and DASH stream data is set to optional in the API response validation schema:
https://github.com/streamlink/streamlink/blob/6.6.2/src/streamlink/plugins/vimeo.py#L56-L57

If the data is missing from the API response, then its value will be None, hence the AttributeError when trying to call .values() for iterating over the data.

Didn't check this on actual live event streams, because I don't know how to find them on Vimeo. This PR fixes the AttributeError, but I don't know if live events are actually working.

@WolfganP @Sparticuz
Please see if there are any other issues while trying to watch live event streams, thanks.
https://github.com/streamlink/streamlink/blob/master/CONTRIBUTING.md#pull-request-feedback

@bastimeyer bastimeyer added the plugin issue A Plugin does not work correctly label Feb 22, 2024
@WolfganP
Copy link

Thx @bastimeyer ! I sideloaded the modified plugin to streamlink 6.6.2 and tested a live link (selected from here https://vimeo.com/search?live=now) and a stored one and they both worked OK.

Thanks a lot for the prompt solution!

@bastimeyer bastimeyer merged commit f205f54 into streamlink:master Feb 22, 2024
@bastimeyer bastimeyer deleted the plugins/vimeo/fix-empty-streams branch February 22, 2024 20:10
@floschwend
Copy link

floschwend commented Mar 16, 2024

@bastimeyer @WolfganP Even with sideloading the newest vimeo.py plugin, I'm still getting the same error.

C:\Users\flosc>streamlink https://vimeo.com/event/4154130 -l all
[14:26:39.316224][session][info] Plugin vimeo is being overridden by C:\Users\flosc\AppData\Roaming\streamlink\plugins\vimeo.py
[14:26:39.433176][cli][debug] OS:         Windows 11
[14:26:39.434175][cli][debug] Python:     3.12.2
[14:26:39.434175][cli][debug] OpenSSL:    OpenSSL 3.0.13 30 Jan 2024
[14:26:39.434175][cli][debug] Streamlink: 6.7.0
[14:26:39.435178][cli][debug] Dependencies:
[14:26:39.448583][cli][debug]  certifi: 2024.2.2
[14:26:39.454586][cli][debug]  isodate: 0.6.1
[14:26:39.459755][cli][debug]  lxml: 5.1.0
[14:26:39.460754][cli][debug]  pycountry: 23.12.11
[14:26:39.465753][cli][debug]  pycryptodome: 3.20.0
[14:26:39.474852][cli][debug]  PySocks: 1.7.1
[14:26:39.483954][cli][debug]  requests: 2.31.0
[14:26:39.491282][cli][debug]  trio: 0.24.0
[14:26:39.499423][cli][debug]  trio-websocket: 0.11.1
[14:26:39.505420][cli][debug]  typing-extensions: 4.10.0
[14:26:39.514794][cli][debug]  urllib3: 2.2.1
[14:26:39.525189][cli][debug]  websocket-client: 1.7.0
[14:26:39.526190][cli][debug] Arguments:
[14:26:39.526190][cli][debug]  url=https://vimeo.com/event/4154130
[14:26:39.526190][cli][debug]  --loglevel=all
[14:26:39.527334][cli][debug]  --ffmpeg-ffmpeg=C:\Program Files\Streamlink\ffmpeg\ffmpeg.exe
[14:26:39.527334][cli][info] Found matching plugin vimeo for URL https://vimeo.com/event/4154130
error: Unable to validate response text: ValidationError(dict):
  Key 'uri' not found in <{'type': 'video', 'version': '1.0', 'provider_name': 'V...>

I'm using the latest master version of the file from here: https://github.com/streamlink/streamlink/blob/master/src/streamlink/plugins/vimeo.py

Any idea? Thanks a lot for your support.

I'm using streamlink 6.7.0, so I assume that the fix was anyway already merged. Without using the manual plugin I end up with the same error.

@bastimeyer
Copy link
Member Author

These changes have made it into the latest stable release, so sideloading is not necessary.
If there are still issues or if new issues have come up, then please open a new plugin issue.

@streamlink streamlink locked as resolved and limited conversation to collaborators Mar 16, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
plugin issue A Plugin does not work correctly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

plugins.vimeo: live event URL triggers ValidationError / DASH errors
3 participants