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

fix: Fix potential AV sync issues after seek or adaptation #4886

Merged
merged 1 commit into from
Jan 12, 2023

Conversation

joeyparrish
Copy link
Member

After seeking or adaptation, StreamingEngine will create a new SegmentIterator. However, if the buffered ranges are different enough from the references in the iterator, the lookup in the index can produce a duplicate segment. If this happens when sequence mode is active, StreamingEngine will append the duplicate segment instead of overwriting the end of the original one.

Any time a new iterator is created, we force the stream to resync, so that unaligned segments or slightly-inaccurate segments are written to the correct place in the buffer.

Issue #4589

After seeking or adaptation, StreamingEngine will create a new
SegmentIterator.  However, if the buffered ranges are different enough
from the references in the iterator, and if sequence mode is active,
this can cause StreamingEngine to append a duplicate segment instead
of overwriting the end of one.

Any time a new iterator is created, we force the stream to resync, so
that unaligned segments or slightly-inaccurate segments are written to
the correct place in the buffer.

Issue shaka-project#4589
@github-actions
Copy link
Contributor

Incremental code coverage: 100.00%

@avelad avelad added type: bug Something isn't working correctly priority: P1 Big impact or workaround impractical; resolve before feature release labels Jan 12, 2023
@avelad avelad added this to the v4.4 milestone Jan 12, 2023
@joeyparrish joeyparrish merged commit c42565c into shaka-project:main Jan 12, 2023
@joeyparrish joeyparrish deleted the rounding-errors-3 branch January 12, 2023 17:40
joeyparrish added a commit that referenced this pull request Jan 13, 2023
After seeking or adaptation, StreamingEngine will create a new
SegmentIterator. However, if the buffered ranges are different enough
from the references in the iterator, the lookup in the index can produce
a duplicate segment. If this happens when sequence mode is active,
StreamingEngine will append the duplicate segment instead of overwriting
the end of the original one.

Any time a new iterator is created, we force the stream to resync, so
that unaligned segments or slightly-inaccurate segments are written to
the correct place in the buffer.

Issue #4589
joeyparrish added a commit that referenced this pull request Jan 13, 2023
After seeking or adaptation, StreamingEngine will create a new
SegmentIterator. However, if the buffered ranges are different enough
from the references in the iterator, the lookup in the index can produce
a duplicate segment. If this happens when sequence mode is active,
StreamingEngine will append the duplicate segment instead of overwriting
the end of the original one.

Any time a new iterator is created, we force the stream to resync, so
that unaligned segments or slightly-inaccurate segments are written to
the correct place in the buffer.

Issue #4589
Robloche pushed a commit to Robloche/shaka-player that referenced this pull request Feb 8, 2023
…ject#4886)

After seeking or adaptation, StreamingEngine will create a new
SegmentIterator. However, if the buffered ranges are different enough
from the references in the iterator, the lookup in the index can produce
a duplicate segment. If this happens when sequence mode is active,
StreamingEngine will append the duplicate segment instead of overwriting
the end of the original one.

Any time a new iterator is created, we force the stream to resync, so
that unaligned segments or slightly-inaccurate segments are written to
the correct place in the buffer.

Issue shaka-project#4589
@github-actions github-actions bot added the status: archived Archived and locked; will not be updated label Jul 25, 2023
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 25, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
priority: P1 Big impact or workaround impractical; resolve before feature release status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants