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
f5980a54
authored
Jul 29, 2019
by
andrewlewis
Committed by
Oliver Woodman
Jul 29, 2019
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Ensure the SilenceMediaSource position is in range
Issue: #6229 PiperOrigin-RevId: 260500986
parent
d279c3d2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
10 additions
and
2 deletions
RELEASENOTES.md
library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java
RELEASENOTES.md
View file @
f5980a54
...
@@ -14,6 +14,8 @@
...
@@ -14,6 +14,8 @@
(
[
#6153
](
https://github.com/google/ExoPlayer/issues/6153
)
).
(
[
#6153
](
https://github.com/google/ExoPlayer/issues/6153
)
).
*
Fix
`DataSchemeDataSource`
re-opening and range requests
*
Fix
`DataSchemeDataSource`
re-opening and range requests
(
[
#6192
](
https://github.com/google/ExoPlayer/issues/6192
)
).
(
[
#6192
](
https://github.com/google/ExoPlayer/issues/6192
)
).
*
Ensure the
`SilenceMediaSource`
position is in range
(
[
#6229
](
https://github.com/google/ExoPlayer/issues/6229
)
).
*
Flac extension: Parse
`VORBIS_COMMENT`
metadata
*
Flac extension: Parse
`VORBIS_COMMENT`
metadata
(
[
#5527
](
https://github.com/google/ExoPlayer/issues/5527
)
).
(
[
#5527
](
https://github.com/google/ExoPlayer/issues/5527
)
).
...
...
library/core/src/main/java/com/google/android/exoplayer2/source/SilenceMediaSource.java
View file @
f5980a54
...
@@ -118,6 +118,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
...
@@ -118,6 +118,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
@NullableType
SampleStream
[]
streams
,
@NullableType
SampleStream
[]
streams
,
boolean
[]
streamResetFlags
,
boolean
[]
streamResetFlags
,
long
positionUs
)
{
long
positionUs
)
{
positionUs
=
constrainSeekPosition
(
positionUs
);
for
(
int
i
=
0
;
i
<
selections
.
length
;
i
++)
{
for
(
int
i
=
0
;
i
<
selections
.
length
;
i
++)
{
if
(
streams
[
i
]
!=
null
&&
(
selections
[
i
]
==
null
||
!
mayRetainStreamFlags
[
i
]))
{
if
(
streams
[
i
]
!=
null
&&
(
selections
[
i
]
==
null
||
!
mayRetainStreamFlags
[
i
]))
{
sampleStreams
.
remove
(
streams
[
i
]);
sampleStreams
.
remove
(
streams
[
i
]);
...
@@ -144,6 +145,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
...
@@ -144,6 +145,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
@Override
@Override
public
long
seekToUs
(
long
positionUs
)
{
public
long
seekToUs
(
long
positionUs
)
{
positionUs
=
constrainSeekPosition
(
positionUs
);
for
(
int
i
=
0
;
i
<
sampleStreams
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
sampleStreams
.
size
();
i
++)
{
((
SilenceSampleStream
)
sampleStreams
.
get
(
i
)).
seekTo
(
positionUs
);
((
SilenceSampleStream
)
sampleStreams
.
get
(
i
)).
seekTo
(
positionUs
);
}
}
...
@@ -152,7 +154,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
...
@@ -152,7 +154,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
@Override
@Override
public
long
getAdjustedSeekPositionUs
(
long
positionUs
,
SeekParameters
seekParameters
)
{
public
long
getAdjustedSeekPositionUs
(
long
positionUs
,
SeekParameters
seekParameters
)
{
return
positionUs
;
return
constrainSeekPosition
(
positionUs
)
;
}
}
@Override
@Override
...
@@ -172,6 +174,10 @@ public final class SilenceMediaSource extends BaseMediaSource {
...
@@ -172,6 +174,10 @@ public final class SilenceMediaSource extends BaseMediaSource {
@Override
@Override
public
void
reevaluateBuffer
(
long
positionUs
)
{}
public
void
reevaluateBuffer
(
long
positionUs
)
{}
private
long
constrainSeekPosition
(
long
positionUs
)
{
return
Util
.
constrainValue
(
positionUs
,
0
,
durationUs
);
}
}
}
private
static
final
class
SilenceSampleStream
implements
SampleStream
{
private
static
final
class
SilenceSampleStream
implements
SampleStream
{
...
@@ -187,7 +193,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
...
@@ -187,7 +193,7 @@ public final class SilenceMediaSource extends BaseMediaSource {
}
}
public
void
seekTo
(
long
positionUs
)
{
public
void
seekTo
(
long
positionUs
)
{
positionBytes
=
getAudioByteCount
(
positionU
s
);
positionBytes
=
Util
.
constrainValue
(
getAudioByteCount
(
positionUs
),
0
,
durationByte
s
);
}
}
@Override
@Override
...
...
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