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
b46f64ab
authored
Mar 11, 2020
by
Oliver Woodman
Browse files
Options
_('Browse Files')
Download
Plain Diff
Merge pull request #7064 from davibe:enhancement/6907
PiperOrigin-RevId: 300330109
parents
0175dd44
8908cc85
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
10 deletions
RELEASENOTES.md
library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DashMediaSource.java
RELEASENOTES.md
View file @
b46f64ab
...
@@ -76,7 +76,10 @@
...
@@ -76,7 +76,10 @@
MediaSources factories.
MediaSources factories.
*
Downloads: Merge downloads in
`SegmentDownloader`
to improve overall
*
Downloads: Merge downloads in
`SegmentDownloader`
to improve overall
download speed (
[
#5978
](
https://github.com/google/ExoPlayer/issues/5978
)
).
download speed (
[
#5978
](
https://github.com/google/ExoPlayer/issues/5978
)
).
*
DASH: Parse period
`AssetIdentifier`
elements.
*
DASH:
*
Update the manifest URI to avoid repeated HTTP redirects
(
[
#6907
](
https://github.com/google/ExoPlayer/issues/6907
)
).
*
Parse period
`AssetIdentifier`
elements.
*
MP3: Add
`IndexSeeker`
for accurate seeks in VBR streams
*
MP3: Add
`IndexSeeker`
for accurate seeks in VBR streams
(
[
#6787
](
https://github.com/google/ExoPlayer/issues/6787
)
). This seeker is
(
[
#6787
](
https://github.com/google/ExoPlayer/issues/6787
)
). This seeker is
enabled by passing
`FLAG_ENABLE_INDEX_SEEKING`
to the
`Mp3Extractor`
. It may
enabled by passing
`FLAG_ENABLE_INDEX_SEEKING`
to the
`Mp3Extractor`
. It may
...
...
library/dash/src/main/java/com/google/android/exoplayer2/source/dash/DashMediaSource.java
View file @
b46f64ab
...
@@ -814,15 +814,18 @@ public final class DashMediaSource extends BaseMediaSource {
...
@@ -814,15 +814,18 @@ public final class DashMediaSource extends BaseMediaSource {
manifestLoadPending
&=
manifest
.
dynamic
;
manifestLoadPending
&=
manifest
.
dynamic
;
manifestLoadStartTimestampMs
=
elapsedRealtimeMs
-
loadDurationMs
;
manifestLoadStartTimestampMs
=
elapsedRealtimeMs
-
loadDurationMs
;
manifestLoadEndTimestampMs
=
elapsedRealtimeMs
;
manifestLoadEndTimestampMs
=
elapsedRealtimeMs
;
if
(
manifest
.
location
!=
null
)
{
synchronized
(
manifestUriLock
)
{
synchronized
(
manifestUriLock
)
{
// This condition checks that replaceManifestUri wasn't called between the start and end of
// Checks whether replaceManifestUri(Uri) was called to manually replace the URI between the
// this load. If it was, we ignore the manifest location and prefer the manual replacement.
// start and end of this load. If it was then isSameUriInstance evaluates to false, and we
@SuppressWarnings
(
"ReferenceEquality"
)
// prefer the manual replacement to one derived from the previous request.
boolean
isSameUriInstance
=
loadable
.
dataSpec
.
uri
==
manifestUri
;
@SuppressWarnings
(
"ReferenceEquality"
)
if
(
isSameUriInstance
)
{
boolean
isSameUriInstance
=
loadable
.
dataSpec
.
uri
==
manifestUri
;
manifestUri
=
manifest
.
location
;
if
(
isSameUriInstance
)
{
}
// Replace the manifest URI with one specified by a manifest Location element (if present),
// or with the final (possibly redirected) URI. This follows the recommendation in
// DASH-IF-IOP 4.3, section 3.2.15.3. See: https://dashif.org/docs/DASH-IF-IOP-v4.3.pdf.
manifestUri
=
manifest
.
location
!=
null
?
manifest
.
location
:
loadable
.
getUri
();
}
}
}
}
...
...
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