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

Video.get_url() gives you an url to an m3u8 playlist but not to the video. #257

Open
exislow opened this issue Apr 20, 2024 · 3 comments
Open

Comments

@exislow
Copy link
Contributor

exislow commented Apr 20, 2024

According to the description of Video.get_url() I would actually expect the direct video url according to my set video_quality:

def get_url(self) -> str:
"""Retrieves the URL for a video.
:return: A `str` object containing the direct video URL
:raises: A :class:`exceptions.URLNotAvailable` if no URL is available for this video
"""

Retrieves the URL for a video.

:return: A `str` object containing the direct video URL

But instead this method return a link to an m3u8 playlist, where I need to pick the direct video url for my desired quality by myself. What am I doing wrong? Or is the description of the method not correct?

@tehkillerbee
Copy link
Collaborator

tehkillerbee commented Apr 20, 2024

This is how the tidal api works when requested the (stream) url through the api. So the description is slightly vague but correct.

You are presented with an url to the HLS (m3u8) playlist/index which is the (usual) way to handle video steams, the other being MPD-Dash.

I suspect Mpd manifest may also be available (similar to track stream) but I have not looked into it.

@exislow
Copy link
Contributor Author

exislow commented Apr 21, 2024

What do you think about this:

  • Let's correct the method comment to be more precise.
  • Have a look at the MPD option in the next step?

@tehkillerbee
Copy link
Collaborator

@exislow Sounds good to me. We should at least make it clear that the URL presented is a HLS stream playlist (m3u8) if this is currently the case. Also we should probably make sure that the quality selection logic actually works as expected, especially if multiple qualities are presented in this HLS stream.

I do believe the video class need a bit of a look over anyways.

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

No branches or pull requests

2 participants