Skip to content

Commit

Permalink
Replace usages of CompositeMediaSource<Void> with WrappingMediaSource
Browse files Browse the repository at this point in the history
  • Loading branch information
stoyicker committed Jul 19, 2022
1 parent 951b131 commit ba9f3d8
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 24 deletions.
Expand Up @@ -41,7 +41,7 @@
* positions. The wrapped source must consist of a single period.
*/
@UnstableApi
public final class ClippingMediaSource extends CompositeMediaSource<Void> {
public final class ClippingMediaSource extends WrappingMediaSource {

/** Thrown when a {@link ClippingMediaSource} cannot clip its wrapped source. */
public static final class IllegalClippingException extends IOException {
Expand Down Expand Up @@ -202,7 +202,7 @@ public MediaItem getMediaItem() {
@Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
super.prepareSourceInternal(mediaTransferListener);
prepareChildSource(/* id= */ null, mediaSource);
prepareChildSource(mediaSource);
}

@Override
Expand Down Expand Up @@ -242,7 +242,7 @@ protected void releaseSourceInternal() {
}

@Override
protected void onChildSourceInfoRefreshed(Void id, MediaSource mediaSource, Timeline timeline) {
protected void onChildSourceInfoRefreshed(Timeline timeline) {
if (clippingError != null) {
return;
}
Expand Down
Expand Up @@ -43,7 +43,7 @@
*/
@Deprecated
@UnstableApi
public final class LoopingMediaSource extends CompositeMediaSource<Void> {
public final class LoopingMediaSource extends WrappingMediaSource {

private final MaskingMediaSource maskingMediaSource;
private final int loopCount;
Expand Down Expand Up @@ -95,7 +95,7 @@ public boolean isSingleWindow() {
@Override
protected void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
super.prepareSourceInternal(mediaTransferListener);
prepareChildSource(/* id= */ null, maskingMediaSource);
prepareChildSource(maskingMediaSource);
}

@Override
Expand Down Expand Up @@ -123,7 +123,7 @@ public void releasePeriod(MediaPeriod mediaPeriod) {
}

@Override
protected void onChildSourceInfoRefreshed(Void id, MediaSource mediaSource, Timeline timeline) {
protected void onChildSourceInfoRefreshed(Timeline timeline) {
Timeline loopingTimeline =
loopCount != Integer.MAX_VALUE
? new LoopingTimeline(timeline, loopCount)
Expand All @@ -134,7 +134,8 @@ protected void onChildSourceInfoRefreshed(Void id, MediaSource mediaSource, Time
@Override
@Nullable
protected MediaPeriodId getMediaPeriodIdForChildMediaPeriodId(
Void id, MediaPeriodId mediaPeriodId) {
Void id, MediaPeriodId mediaPeriodId
) {
return loopCount != Integer.MAX_VALUE
? childMediaPeriodIdToMediaPeriodId.get(mediaPeriodId)
: mediaPeriodId;
Expand Down
Expand Up @@ -37,7 +37,7 @@
* structure is known.
*/
@UnstableApi
public final class MaskingMediaSource extends CompositeMediaSource<Void> {
public final class MaskingMediaSource extends WrappingMediaSource {

private final MediaSource mediaSource;
private final boolean useLazyPreparation;
Expand Down Expand Up @@ -84,7 +84,7 @@ public void prepareSourceInternal(@Nullable TransferListener mediaTransferListen
super.prepareSourceInternal(mediaTransferListener);
if (!useLazyPreparation) {
hasStartedPreparing = true;
prepareChildSource(/* id= */ null, mediaSource);
prepareChildSource(mediaSource);
}
}

Expand Down Expand Up @@ -115,7 +115,7 @@ public MaskingMediaPeriod createPeriod(
unpreparedMaskingMediaPeriod = mediaPeriod;
if (!hasStartedPreparing) {
hasStartedPreparing = true;
prepareChildSource(/* id= */ null, mediaSource);
prepareChildSource(mediaSource);
}
}
return mediaPeriod;
Expand All @@ -137,8 +137,7 @@ public void releaseSourceInternal() {
}

@Override
protected void onChildSourceInfoRefreshed(
Void id, MediaSource mediaSource, Timeline newTimeline) {
protected void onChildSourceInfoRefreshed(MediaSource mediaSource, Timeline newTimeline) {
@Nullable MediaPeriodId idForMaskingPeriodPreparation = null;
if (isPrepared) {
timeline = timeline.cloneWithUpdatedTimeline(newTimeline);
Expand Down Expand Up @@ -208,8 +207,7 @@ protected void onChildSourceInfoRefreshed(

@Override
@Nullable
protected MediaPeriodId getMediaPeriodIdForChildMediaPeriodId(
Void id, MediaPeriodId mediaPeriodId) {
protected MediaPeriodId getMediaPeriodIdForChildMediaPeriodId(MediaPeriodId mediaPeriodId) {
return mediaPeriodId.copyWithPeriodUid(getExternalPeriodUid(mediaPeriodId.periodUid));
}

Expand Down
Expand Up @@ -3942,16 +3942,16 @@ public void delegatingMediaSourceApproach() throws Exception {
new TimelineWindowDefinition(
/* isSeekable= */ true, /* isDynamic= */ false, /* durationUs= */ 10_000_000));
final ConcatenatingMediaSource underlyingSource = new ConcatenatingMediaSource();
CompositeMediaSource<Void> delegatingMediaSource =
new CompositeMediaSource<Void>() {
WrappingMediaSource delegatingMediaSource =
new WrappingMediaSource() {
@Override
public void prepareSourceInternal(@Nullable TransferListener mediaTransferListener) {
super.prepareSourceInternal(mediaTransferListener);
underlyingSource.addMediaSource(
new FakeMediaSource(fakeTimeline, ExoPlayerTestRunner.VIDEO_FORMAT));
underlyingSource.addMediaSource(
new FakeMediaSource(fakeTimeline, ExoPlayerTestRunner.VIDEO_FORMAT));
prepareChildSource(null, underlyingSource);
prepareChildSource(underlyingSource);
}

@Override
Expand All @@ -3966,8 +3966,7 @@ public void releasePeriod(MediaPeriod mediaPeriod) {
}

@Override
protected void onChildSourceInfoRefreshed(
Void id, MediaSource mediaSource, Timeline timeline) {
protected void onChildSourceInfoRefreshed(Timeline timeline) {
refreshSourceInfo(timeline);
}

Expand Down
Expand Up @@ -56,11 +56,11 @@
import androidx.media3.common.util.Util;
import androidx.media3.datasource.TransferListener;
import androidx.media3.exoplayer.drm.DrmSessionManagerProvider;
import androidx.media3.exoplayer.source.CompositeMediaSource;
import androidx.media3.exoplayer.source.DefaultMediaSourceFactory;
import androidx.media3.exoplayer.source.ForwardingTimeline;
import androidx.media3.exoplayer.source.MediaPeriod;
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.AdPlaybackStateUpdater;
import androidx.media3.exoplayer.source.ads.ServerSideAdInsertionUtil;
Expand Down Expand Up @@ -108,7 +108,7 @@

/** MediaSource for IMA server side inserted ad streams. */
@UnstableApi
public final class ImaServerSideAdInsertionMediaSource extends CompositeMediaSource<Void> {
public final class ImaServerSideAdInsertionMediaSource extends WrappingMediaSource {

/**
* Factory for creating {@link ImaServerSideAdInsertionMediaSource
Expand Down Expand Up @@ -521,8 +521,7 @@ public void prepareSourceInternal(@Nullable TransferListener mediaTransferListen
}

@Override
protected void onChildSourceInfoRefreshed(
Void id, MediaSource mediaSource, Timeline newTimeline) {
protected void onChildSourceInfoRefreshed(Timeline newTimeline) {
refreshSourceInfo(
new ForwardingTimeline(newTimeline) {
@Override
Expand Down Expand Up @@ -655,7 +654,7 @@ private void setContentUri(Uri contentUri) {
.withIsServerSideInserted(/* adGroupIndex= */ 0, true);
mainHandler.post(() -> setAdPlaybackState(liveAdPlaybackState));
}
prepareChildSource(/* id= */ null, serverSideAdInsertionMediaSource);
prepareChildSource(serverSideAdInsertionMediaSource);
}

// Static methods.
Expand Down

0 comments on commit ba9f3d8

Please sign in to comment.