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

Angel One HLS SeekRange incorrect #3733

Closed
theodab opened this issue Nov 2, 2021 · 0 comments
Closed

Angel One HLS SeekRange incorrect #3733

theodab opened this issue Nov 2, 2021 · 0 comments
Assignees
Labels
component: HLS The issue involves Apple's HLS manifest format 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

@theodab
Copy link
Contributor

theodab commented Nov 2, 2021

When playing Angel One (HLS, MP4, multilingual) in the demo, the video ends with the seek bar not fully filled:
Screen Shot 2021-11-01 at 7 04 30 PM

Further investigation reveals that the player reports a seek range of 0 - 64 seconds. Looking into some calls, it appears that (some of?) the streams in the manifest end with segment references that have a time of 60-64 seconds. The HLS parser first notifies the presentation timeline of all of the references, and then AFTER that it culls the references to fit the playlist duration. The end result is that the presentation timeline thinks the media has the pre-fit duration of 64 seconds, while MediaSource thinks that the media has the post-fit duration of 60 seconds.

We should probably change the HLS parser to only notify the presentation timeline about references after fitting.

@theodab theodab added type: bug Something isn't working correctly component: HLS The issue involves Apple's HLS manifest format priority: P2 Smaller impact or easy workaround labels Nov 2, 2021
@shaka-bot shaka-bot added this to the v3.3 milestone Nov 2, 2021
@theodab theodab self-assigned this Nov 4, 2021
theodab added a commit that referenced this issue Nov 5, 2021
Previously, the HLS parser would notify the presentation timeline
of the segments in the manifest before fitting the segments.
The HLS parser will also sometimes remove segments from the end of
a VOD asset if they do not fit within the playlist duration.
This could sometimes cause the presentation timeline and MediaSource
to have different opinions on how long the VOD asset was, which could
lead to the seek bar looking like the presentation stopped before the
end.

Closes #3733

Change-Id: I67fdc28a3f6eee158c9906359491fe6bb418e730
@shaka-bot shaka-bot added the status: archived Archived and locked; will not be updated label Jan 3, 2022
@shaka-project shaka-project locked and limited conversation to collaborators Jan 3, 2022
joeyparrish pushed a commit that referenced this issue Jan 5, 2022
Previously, the HLS parser would notify the presentation timeline
of the segments in the manifest before fitting the segments.
The HLS parser will also sometimes remove segments from the end of
a VOD asset if they do not fit within the playlist duration.
This could sometimes cause the presentation timeline and MediaSource
to have different opinions on how long the VOD asset was, which could
lead to the seek bar looking like the presentation stopped before the
end.

Closes #3733

Change-Id: I67fdc28a3f6eee158c9906359491fe6bb418e730
joeyparrish pushed a commit that referenced this issue Jan 5, 2022
Previously, the HLS parser would notify the presentation timeline
of the segments in the manifest before fitting the segments.
The HLS parser will also sometimes remove segments from the end of
a VOD asset if they do not fit within the playlist duration.
This could sometimes cause the presentation timeline and MediaSource
to have different opinions on how long the VOD asset was, which could
lead to the seek bar looking like the presentation stopped before the
end.

Closes #3733

Change-Id: I67fdc28a3f6eee158c9906359491fe6bb418e730
joeyparrish pushed a commit that referenced this issue Jan 5, 2022
Previously, the HLS parser would notify the presentation timeline
of the segments in the manifest before fitting the segments.
The HLS parser will also sometimes remove segments from the end of
a VOD asset if they do not fit within the playlist duration.
This could sometimes cause the presentation timeline and MediaSource
to have different opinions on how long the VOD asset was, which could
lead to the seek bar looking like the presentation stopped before the
end.

Closes #3733

Change-Id: I67fdc28a3f6eee158c9906359491fe6bb418e730
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
component: HLS The issue involves Apple's HLS manifest format 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
Development

No branches or pull requests

2 participants