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
ba9f3d8e
authored
Jul 15, 2022
by
Jorge Antonio Diaz-Benito Soriano
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Replace usages of CompositeMediaSource<Void> with WrappingMediaSource
parent
951b1319
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
21 additions
and
24 deletions
libraries/exoplayer/src/main/java/androidx/media3/exoplayer/source/ClippingMediaSource.java
libraries/exoplayer/src/main/java/androidx/media3/exoplayer/source/LoopingMediaSource.java
libraries/exoplayer/src/main/java/androidx/media3/exoplayer/source/MaskingMediaSource.java
libraries/exoplayer/src/test/java/androidx/media3/exoplayer/ExoPlayerTest.java
libraries/exoplayer_ima/src/main/java/androidx/media3/exoplayer/ima/ImaServerSideAdInsertionMediaSource.java
libraries/exoplayer/src/main/java/androidx/media3/exoplayer/source/ClippingMediaSource.java
View file @
ba9f3d8e
...
@@ -41,7 +41,7 @@ import java.util.ArrayList;
...
@@ -41,7 +41,7 @@ import java.util.ArrayList;
* positions. The wrapped source must consist of a single period.
* positions. The wrapped source must consist of a single period.
*/
*/
@UnstableApi
@UnstableApi
public
final
class
ClippingMediaSource
extends
CompositeMediaSource
<
Void
>
{
public
final
class
ClippingMediaSource
extends
WrappingMediaSource
{
/** Thrown when a {@link ClippingMediaSource} cannot clip its wrapped source. */
/** Thrown when a {@link ClippingMediaSource} cannot clip its wrapped source. */
public
static
final
class
IllegalClippingException
extends
IOException
{
public
static
final
class
IllegalClippingException
extends
IOException
{
...
@@ -202,7 +202,7 @@ public final class ClippingMediaSource extends CompositeMediaSource<Void> {
...
@@ -202,7 +202,7 @@ public final class ClippingMediaSource extends CompositeMediaSource<Void> {
@Override
@Override
protected
void
prepareSourceInternal
(
@Nullable
TransferListener
mediaTransferListener
)
{
protected
void
prepareSourceInternal
(
@Nullable
TransferListener
mediaTransferListener
)
{
super
.
prepareSourceInternal
(
mediaTransferListener
);
super
.
prepareSourceInternal
(
mediaTransferListener
);
prepareChildSource
(
/* id= */
null
,
mediaSource
);
prepareChildSource
(
mediaSource
);
}
}
@Override
@Override
...
@@ -242,7 +242,7 @@ public final class ClippingMediaSource extends CompositeMediaSource<Void> {
...
@@ -242,7 +242,7 @@ public final class ClippingMediaSource extends CompositeMediaSource<Void> {
}
}
@Override
@Override
protected
void
onChildSourceInfoRefreshed
(
Void
id
,
MediaSource
mediaSource
,
Timeline
timeline
)
{
protected
void
onChildSourceInfoRefreshed
(
Timeline
timeline
)
{
if
(
clippingError
!=
null
)
{
if
(
clippingError
!=
null
)
{
return
;
return
;
}
}
...
...
libraries/exoplayer/src/main/java/androidx/media3/exoplayer/source/LoopingMediaSource.java
View file @
ba9f3d8e
...
@@ -43,7 +43,7 @@ import java.util.Map;
...
@@ -43,7 +43,7 @@ import java.util.Map;
*/
*/
@Deprecated
@Deprecated
@UnstableApi
@UnstableApi
public
final
class
LoopingMediaSource
extends
CompositeMediaSource
<
Void
>
{
public
final
class
LoopingMediaSource
extends
WrappingMediaSource
{
private
final
MaskingMediaSource
maskingMediaSource
;
private
final
MaskingMediaSource
maskingMediaSource
;
private
final
int
loopCount
;
private
final
int
loopCount
;
...
@@ -95,7 +95,7 @@ public final class LoopingMediaSource extends CompositeMediaSource<Void> {
...
@@ -95,7 +95,7 @@ public final class LoopingMediaSource extends CompositeMediaSource<Void> {
@Override
@Override
protected
void
prepareSourceInternal
(
@Nullable
TransferListener
mediaTransferListener
)
{
protected
void
prepareSourceInternal
(
@Nullable
TransferListener
mediaTransferListener
)
{
super
.
prepareSourceInternal
(
mediaTransferListener
);
super
.
prepareSourceInternal
(
mediaTransferListener
);
prepareChildSource
(
/* id= */
null
,
maskingMediaSource
);
prepareChildSource
(
maskingMediaSource
);
}
}
@Override
@Override
...
@@ -123,7 +123,7 @@ public final class LoopingMediaSource extends CompositeMediaSource<Void> {
...
@@ -123,7 +123,7 @@ public final class LoopingMediaSource extends CompositeMediaSource<Void> {
}
}
@Override
@Override
protected
void
onChildSourceInfoRefreshed
(
Void
id
,
MediaSource
mediaSource
,
Timeline
timeline
)
{
protected
void
onChildSourceInfoRefreshed
(
Timeline
timeline
)
{
Timeline
loopingTimeline
=
Timeline
loopingTimeline
=
loopCount
!=
Integer
.
MAX_VALUE
loopCount
!=
Integer
.
MAX_VALUE
?
new
LoopingTimeline
(
timeline
,
loopCount
)
?
new
LoopingTimeline
(
timeline
,
loopCount
)
...
@@ -134,7 +134,8 @@ public final class LoopingMediaSource extends CompositeMediaSource<Void> {
...
@@ -134,7 +134,8 @@ public final class LoopingMediaSource extends CompositeMediaSource<Void> {
@Override
@Override
@Nullable
@Nullable
protected
MediaPeriodId
getMediaPeriodIdForChildMediaPeriodId
(
protected
MediaPeriodId
getMediaPeriodIdForChildMediaPeriodId
(
Void
id
,
MediaPeriodId
mediaPeriodId
)
{
Void
id
,
MediaPeriodId
mediaPeriodId
)
{
return
loopCount
!=
Integer
.
MAX_VALUE
return
loopCount
!=
Integer
.
MAX_VALUE
?
childMediaPeriodIdToMediaPeriodId
.
get
(
mediaPeriodId
)
?
childMediaPeriodIdToMediaPeriodId
.
get
(
mediaPeriodId
)
:
mediaPeriodId
;
:
mediaPeriodId
;
...
...
libraries/exoplayer/src/main/java/androidx/media3/exoplayer/source/MaskingMediaSource.java
View file @
ba9f3d8e
...
@@ -37,7 +37,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
...
@@ -37,7 +37,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
* structure is known.
* structure is known.
*/
*/
@UnstableApi
@UnstableApi
public
final
class
MaskingMediaSource
extends
CompositeMediaSource
<
Void
>
{
public
final
class
MaskingMediaSource
extends
WrappingMediaSource
{
private
final
MediaSource
mediaSource
;
private
final
MediaSource
mediaSource
;
private
final
boolean
useLazyPreparation
;
private
final
boolean
useLazyPreparation
;
...
@@ -84,7 +84,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
...
@@ -84,7 +84,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
super
.
prepareSourceInternal
(
mediaTransferListener
);
super
.
prepareSourceInternal
(
mediaTransferListener
);
if
(!
useLazyPreparation
)
{
if
(!
useLazyPreparation
)
{
hasStartedPreparing
=
true
;
hasStartedPreparing
=
true
;
prepareChildSource
(
/* id= */
null
,
mediaSource
);
prepareChildSource
(
mediaSource
);
}
}
}
}
...
@@ -115,7 +115,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
...
@@ -115,7 +115,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
unpreparedMaskingMediaPeriod
=
mediaPeriod
;
unpreparedMaskingMediaPeriod
=
mediaPeriod
;
if
(!
hasStartedPreparing
)
{
if
(!
hasStartedPreparing
)
{
hasStartedPreparing
=
true
;
hasStartedPreparing
=
true
;
prepareChildSource
(
/* id= */
null
,
mediaSource
);
prepareChildSource
(
mediaSource
);
}
}
}
}
return
mediaPeriod
;
return
mediaPeriod
;
...
@@ -137,8 +137,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
...
@@ -137,8 +137,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
}
}
@Override
@Override
protected
void
onChildSourceInfoRefreshed
(
protected
void
onChildSourceInfoRefreshed
(
MediaSource
mediaSource
,
Timeline
newTimeline
)
{
Void
id
,
MediaSource
mediaSource
,
Timeline
newTimeline
)
{
@Nullable
MediaPeriodId
idForMaskingPeriodPreparation
=
null
;
@Nullable
MediaPeriodId
idForMaskingPeriodPreparation
=
null
;
if
(
isPrepared
)
{
if
(
isPrepared
)
{
timeline
=
timeline
.
cloneWithUpdatedTimeline
(
newTimeline
);
timeline
=
timeline
.
cloneWithUpdatedTimeline
(
newTimeline
);
...
@@ -208,8 +207,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
...
@@ -208,8 +207,7 @@ public final class MaskingMediaSource extends CompositeMediaSource<Void> {
@Override
@Override
@Nullable
@Nullable
protected
MediaPeriodId
getMediaPeriodIdForChildMediaPeriodId
(
protected
MediaPeriodId
getMediaPeriodIdForChildMediaPeriodId
(
MediaPeriodId
mediaPeriodId
)
{
Void
id
,
MediaPeriodId
mediaPeriodId
)
{
return
mediaPeriodId
.
copyWithPeriodUid
(
getExternalPeriodUid
(
mediaPeriodId
.
periodUid
));
return
mediaPeriodId
.
copyWithPeriodUid
(
getExternalPeriodUid
(
mediaPeriodId
.
periodUid
));
}
}
...
...
libraries/exoplayer/src/test/java/androidx/media3/exoplayer/ExoPlayerTest.java
View file @
ba9f3d8e
...
@@ -3942,8 +3942,8 @@ public final class ExoPlayerTest {
...
@@ -3942,8 +3942,8 @@ public final class ExoPlayerTest {
new
TimelineWindowDefinition
(
new
TimelineWindowDefinition
(
/* isSeekable= */
true
,
/* isDynamic= */
false
,
/* durationUs= */
10_000_000
));
/* isSeekable= */
true
,
/* isDynamic= */
false
,
/* durationUs= */
10_000_000
));
final
ConcatenatingMediaSource
underlyingSource
=
new
ConcatenatingMediaSource
();
final
ConcatenatingMediaSource
underlyingSource
=
new
ConcatenatingMediaSource
();
CompositeMediaSource
<
Void
>
delegatingMediaSource
=
WrappingMediaSource
delegatingMediaSource
=
new
CompositeMediaSource
<
Void
>
()
{
new
WrappingMediaSource
()
{
@Override
@Override
public
void
prepareSourceInternal
(
@Nullable
TransferListener
mediaTransferListener
)
{
public
void
prepareSourceInternal
(
@Nullable
TransferListener
mediaTransferListener
)
{
super
.
prepareSourceInternal
(
mediaTransferListener
);
super
.
prepareSourceInternal
(
mediaTransferListener
);
...
@@ -3951,7 +3951,7 @@ public final class ExoPlayerTest {
...
@@ -3951,7 +3951,7 @@ public final class ExoPlayerTest {
new
FakeMediaSource
(
fakeTimeline
,
ExoPlayerTestRunner
.
VIDEO_FORMAT
));
new
FakeMediaSource
(
fakeTimeline
,
ExoPlayerTestRunner
.
VIDEO_FORMAT
));
underlyingSource
.
addMediaSource
(
underlyingSource
.
addMediaSource
(
new
FakeMediaSource
(
fakeTimeline
,
ExoPlayerTestRunner
.
VIDEO_FORMAT
));
new
FakeMediaSource
(
fakeTimeline
,
ExoPlayerTestRunner
.
VIDEO_FORMAT
));
prepareChildSource
(
null
,
underlyingSource
);
prepareChildSource
(
underlyingSource
);
}
}
@Override
@Override
...
@@ -3966,8 +3966,7 @@ public final class ExoPlayerTest {
...
@@ -3966,8 +3966,7 @@ public final class ExoPlayerTest {
}
}
@Override
@Override
protected
void
onChildSourceInfoRefreshed
(
protected
void
onChildSourceInfoRefreshed
(
Timeline
timeline
)
{
Void
id
,
MediaSource
mediaSource
,
Timeline
timeline
)
{
refreshSourceInfo
(
timeline
);
refreshSourceInfo
(
timeline
);
}
}
...
...
libraries/exoplayer_ima/src/main/java/androidx/media3/exoplayer/ima/ImaServerSideAdInsertionMediaSource.java
View file @
ba9f3d8e
...
@@ -56,11 +56,11 @@ import androidx.media3.common.util.UnstableApi;
...
@@ -56,11 +56,11 @@ import androidx.media3.common.util.UnstableApi;
import
androidx.media3.common.util.Util
;
import
androidx.media3.common.util.Util
;
import
androidx.media3.datasource.TransferListener
;
import
androidx.media3.datasource.TransferListener
;
import
androidx.media3.exoplayer.drm.DrmSessionManagerProvider
;
import
androidx.media3.exoplayer.drm.DrmSessionManagerProvider
;
import
androidx.media3.exoplayer.source.CompositeMediaSource
;
import
androidx.media3.exoplayer.source.DefaultMediaSourceFactory
;
import
androidx.media3.exoplayer.source.DefaultMediaSourceFactory
;
import
androidx.media3.exoplayer.source.ForwardingTimeline
;
import
androidx.media3.exoplayer.source.ForwardingTimeline
;
import
androidx.media3.exoplayer.source.MediaPeriod
;
import
androidx.media3.exoplayer.source.MediaPeriod
;
import
androidx.media3.exoplayer.source.MediaSource
;
import
androidx.media3.exoplayer.source.MediaSource
;
import
androidx.media3.exoplayer.source.WrappingMediaSource
;
import
androidx.media3.exoplayer.source.ads.ServerSideAdInsertionMediaSource
;
import
androidx.media3.exoplayer.source.ads.ServerSideAdInsertionMediaSource
;
import
androidx.media3.exoplayer.source.ads.ServerSideAdInsertionMediaSource.AdPlaybackStateUpdater
;
import
androidx.media3.exoplayer.source.ads.ServerSideAdInsertionMediaSource.AdPlaybackStateUpdater
;
import
androidx.media3.exoplayer.source.ads.ServerSideAdInsertionUtil
;
import
androidx.media3.exoplayer.source.ads.ServerSideAdInsertionUtil
;
...
@@ -108,7 +108,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
...
@@ -108,7 +108,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
/** MediaSource for IMA server side inserted ad streams. */
/** MediaSource for IMA server side inserted ad streams. */
@UnstableApi
@UnstableApi
public
final
class
ImaServerSideAdInsertionMediaSource
extends
CompositeMediaSource
<
Void
>
{
public
final
class
ImaServerSideAdInsertionMediaSource
extends
WrappingMediaSource
{
/**
/**
* Factory for creating {@link ImaServerSideAdInsertionMediaSource
* Factory for creating {@link ImaServerSideAdInsertionMediaSource
...
@@ -521,8 +521,7 @@ public final class ImaServerSideAdInsertionMediaSource extends CompositeMediaSou
...
@@ -521,8 +521,7 @@ public final class ImaServerSideAdInsertionMediaSource extends CompositeMediaSou
}
}
@Override
@Override
protected
void
onChildSourceInfoRefreshed
(
protected
void
onChildSourceInfoRefreshed
(
Timeline
newTimeline
)
{
Void
id
,
MediaSource
mediaSource
,
Timeline
newTimeline
)
{
refreshSourceInfo
(
refreshSourceInfo
(
new
ForwardingTimeline
(
newTimeline
)
{
new
ForwardingTimeline
(
newTimeline
)
{
@Override
@Override
...
@@ -655,7 +654,7 @@ public final class ImaServerSideAdInsertionMediaSource extends CompositeMediaSou
...
@@ -655,7 +654,7 @@ public final class ImaServerSideAdInsertionMediaSource extends CompositeMediaSou
.
withIsServerSideInserted
(
/* adGroupIndex= */
0
,
true
);
.
withIsServerSideInserted
(
/* adGroupIndex= */
0
,
true
);
mainHandler
.
post
(()
->
setAdPlaybackState
(
liveAdPlaybackState
));
mainHandler
.
post
(()
->
setAdPlaybackState
(
liveAdPlaybackState
));
}
}
prepareChildSource
(
/* id= */
null
,
serverSideAdInsertionMediaSource
);
prepareChildSource
(
serverSideAdInsertionMediaSource
);
}
}
// Static methods.
// Static methods.
...
...
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