Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
SDK
/
exoplayer
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
9ec94a4b
authored
Oct 04, 2019
by
Cai Yuanqing
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Check the new index contains the old index based on stat time instead of segNum
parent
c2d9960a
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
6 additions
and
2 deletions
library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DefaultDashChunkSource.java
library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DefaultDashChunkSource.java
View file @
9ec94a4b
...
@@ -686,6 +686,8 @@ public class DefaultDashChunkSource implements DashChunkSource {
...
@@ -686,6 +686,8 @@ public class DefaultDashChunkSource implements DashChunkSource {
newPeriodDurationUs
,
newRepresentation
,
extractorWrapper
,
segmentNumShift
,
newIndex
);
newPeriodDurationUs
,
newRepresentation
,
extractorWrapper
,
segmentNumShift
,
newIndex
);
}
}
long
oldIndexFirstSegmentNum
=
oldIndex
.
getFirstSegmentNum
();
long
oldIndexStartTimeUs
=
oldIndex
.
getTimeUs
(
oldIndexFirstSegmentNum
);
long
oldIndexLastSegmentNum
=
oldIndex
.
getFirstSegmentNum
()
+
oldIndexSegmentCount
-
1
;
long
oldIndexLastSegmentNum
=
oldIndex
.
getFirstSegmentNum
()
+
oldIndexSegmentCount
-
1
;
long
oldIndexEndTimeUs
=
long
oldIndexEndTimeUs
=
oldIndex
.
getTimeUs
(
oldIndexLastSegmentNum
)
oldIndex
.
getTimeUs
(
oldIndexLastSegmentNum
)
...
@@ -700,8 +702,10 @@ public class DefaultDashChunkSource implements DashChunkSource {
...
@@ -700,8 +702,10 @@ public class DefaultDashChunkSource implements DashChunkSource {
// There's a gap between the old index and the new one which means we've slipped behind the
// There's a gap between the old index and the new one which means we've slipped behind the
// live window and can't proceed.
// live window and can't proceed.
throw
new
BehindLiveWindowException
();
throw
new
BehindLiveWindowException
();
}
else
if
(
oldIndex
.
getFirstSegmentNum
()
>=
newIndexFirstSegmentNum
)
{
}
else
if
(
oldIndexStartTimeUs
>=
newIndexStartTimeUs
)
{
// The new index contains the old one, continue process the next segment
// The new index overlaps with (but does not have a start position contained within) the old
// index. This can only happen if extra segments have been added to the start of the index.
// Continue process the next segment as is.
}
else
{
}
else
{
// The new index overlaps with the old one.
// The new index overlaps with the old one.
newSegmentNumShift
+=
newSegmentNumShift
+=
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment