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

Support direct playback of HLS media playlists, without master playlist #3536

Closed
CySlider opened this issue Jul 16, 2021 · 6 comments · Fixed by #4080 or #4009
Closed

Support direct playback of HLS media playlists, without master playlist #3536

CySlider opened this issue Jul 16, 2021 · 6 comments · Fixed by #4080 or #4009
Assignees
Labels
priority: P2 Smaller impact or easy workaround status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Milestone

Comments

@CySlider
Copy link

The standard states:

6.2.4. Providing Variant Streams

A server MAY offer multiple Media Playlist files to provide different
encodings of the same presentation. If it does so, it SHOULD provide
a Master Playlist file that lists each Variant Stream to allow
clients to switch between encodings dynamically.

6.3.1. General Client Responsibilities

The client obtains the Playlist file from the URI. If the Playlist
file so obtained is a Master Playlist, the client can select a
Variant Stream to load from the Master Playlist.

Yet the Shaka player refuses the playback of a valid single variant HLS stream without a master playlist with
4022 HLS_MASTER_PLAYLIST_NOT_PROVIDED

Also discussed here: #1580
Possible blocker for this is: #1431

@joeyparrish joeyparrish changed the title Shaka can't play valid single variant HLS stream without master playlist (Error code 4022) Support direct playback of HLS media playlists, without master playlist Jul 16, 2021
@joeyparrish joeyparrish added type: enhancement New feature or request priority: P3 Useful but not urgent and removed needs triage labels Jul 16, 2021
@joeyparrish
Copy link
Member

Renamed and marked as an enhancement. We don't support this yet.

@shaka-bot shaka-bot added this to the Backlog milestone Jul 16, 2021
@CySlider
Copy link
Author

IMHO enhancement is a mischaracterization.

Only having one playlist is the default in this spec (Server MAY offer multiple play lists and only in that case it SHOULD provide a master playlist). And not supporting it, is a violation of the specs from as low as version 1. Also having handled at least dozen different HLS players every single one did support this.

I hope this gets more attention than P3/Enhancement.

@joeyparrish
Copy link
Member

Can you explain the purpose of playing a media playlist without other variants? If there's no adaptation, how is that meaningfully different than playing a single MP4?

@CySlider
Copy link
Author

We also support multiple bitrates, but the implementation currently is, that in case there is only a single bitrate provided, we do not provide a master. Saves one - according to the specs unnecessary - roundtrip when starting playback. Playback delay and server load is a sensitive matter. Also we adhere to the specs, shaka not. Obviously it's your call, if you want to, but I still think this is rather a bug than an enhancement, at least if your goal is to be HLS standard compliant.

@soonwait
Copy link

we create a BlobPlugin to make a temporary master playlist, It's work now

@joeyparrish joeyparrish added priority: P2 Smaller impact or easy workaround type: bug Something isn't working correctly and removed type: enhancement New feature or request priority: P3 Useful but not urgent labels Jan 10, 2022
@joeyparrish
Copy link
Member

Upgraded to bug based on the argument made by @CySlider. Thanks!

theodab added a commit to theodab/shaka-player that referenced this issue Mar 29, 2022
theodab added a commit to theodab/shaka-player that referenced this issue Mar 29, 2022
theodab added a commit to theodab/shaka-player that referenced this issue Mar 29, 2022
theodab added a commit to theodab/shaka-player that referenced this issue Mar 30, 2022
@avelad avelad modified the milestones: Backlog, v4.0 May 4, 2022
@github-actions github-actions bot added the status: archived Archived and locked; will not be updated label May 30, 2022
@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 30, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
priority: P2 Smaller impact or easy workaround status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Projects
None yet
6 participants