Commit e7cdd164 by tonihei Committed by Ian Baker

Remove PlaybackInfo.startPositionUs

The only remaining use is to provide the initial position for the first media
period in the queue. At this point, the value is always equivalent to
PlaybackInfo.positionUs because they are set together to the same value in
PlaybackInfo.copyWithNewPosition.

PiperOrigin-RevId: 290749294
parent 2564a121
...@@ -825,17 +825,16 @@ import java.util.concurrent.TimeoutException; ...@@ -825,17 +825,16 @@ import java.util.concurrent.TimeoutException;
Timeline timeline = playbackInfo.timeline; Timeline timeline = playbackInfo.timeline;
MediaPeriodId mediaPeriodId = playbackInfo.periodId; MediaPeriodId mediaPeriodId = playbackInfo.periodId;
long contentPositionUs = playbackInfo.contentPositionUs; long contentPositionUs = playbackInfo.contentPositionUs;
long startPositionUs = playbackInfo.positionUs; long positionUs = playbackInfo.positionUs;
if (clearPlaylist) { if (clearPlaylist) {
timeline = Timeline.EMPTY; timeline = Timeline.EMPTY;
mediaPeriodId = PlaybackInfo.getDummyPeriodForEmptyTimeline(); mediaPeriodId = PlaybackInfo.getDummyPeriodForEmptyTimeline();
contentPositionUs = C.TIME_UNSET; contentPositionUs = C.TIME_UNSET;
startPositionUs = 0; positionUs = 0;
} }
return new PlaybackInfo( return new PlaybackInfo(
timeline, timeline,
mediaPeriodId, mediaPeriodId,
startPositionUs,
contentPositionUs, contentPositionUs,
playbackState, playbackState,
resetError ? null : playbackInfo.playbackError, resetError ? null : playbackInfo.playbackError,
...@@ -843,9 +842,9 @@ import java.util.concurrent.TimeoutException; ...@@ -843,9 +842,9 @@ import java.util.concurrent.TimeoutException;
clearPlaylist ? TrackGroupArray.EMPTY : playbackInfo.trackGroups, clearPlaylist ? TrackGroupArray.EMPTY : playbackInfo.trackGroups,
clearPlaylist ? emptyTrackSelectorResult : playbackInfo.trackSelectorResult, clearPlaylist ? emptyTrackSelectorResult : playbackInfo.trackSelectorResult,
mediaPeriodId, mediaPeriodId,
startPositionUs, positionUs,
/* totalBufferedDurationUs= */ 0, /* totalBufferedDurationUs= */ 0,
startPositionUs); positionUs);
} }
private void updatePlaybackInfo( private void updatePlaybackInfo(
......
...@@ -1167,7 +1167,6 @@ import java.util.concurrent.atomic.AtomicBoolean; ...@@ -1167,7 +1167,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
new PlaybackInfo( new PlaybackInfo(
timeline, timeline,
mediaPeriodId, mediaPeriodId,
startPositionUs,
contentPositionUs, contentPositionUs,
playbackInfo.playbackState, playbackInfo.playbackState,
resetError ? null : playbackInfo.playbackError, resetError ? null : playbackInfo.playbackError,
......
...@@ -542,7 +542,7 @@ import com.google.android.exoplayer2.util.Assertions; ...@@ -542,7 +542,7 @@ import com.google.android.exoplayer2.util.Assertions;
playbackInfo.timeline, playbackInfo.timeline,
playbackInfo.periodId, playbackInfo.periodId,
playbackInfo.contentPositionUs, playbackInfo.contentPositionUs,
playbackInfo.startPositionUs); playbackInfo.positionUs);
} }
/** /**
......
...@@ -38,12 +38,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -38,12 +38,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
/** The {@link MediaPeriodId} of the currently playing media period in the {@link #timeline}. */ /** The {@link MediaPeriodId} of the currently playing media period in the {@link #timeline}. */
public final MediaPeriodId periodId; public final MediaPeriodId periodId;
/** /**
* The start position at which playback started in {@link #periodId} relative to the start of the
* associated period in the {@link #timeline}, in microseconds. Note that this value changes for
* each position discontinuity.
*/
public final long startPositionUs;
/**
* If {@link #periodId} refers to an ad, the position of the suspended content relative to the * If {@link #periodId} refers to an ad, the position of the suspended content relative to the
* start of the associated period in the {@link #timeline}, in microseconds. {@link C#TIME_UNSET} * start of the associated period in the {@link #timeline}, in microseconds. {@link C#TIME_UNSET}
* if {@link #periodId} does not refer to an ad or if the suspended content should be played from * if {@link #periodId} does not refer to an ad or if the suspended content should be played from
...@@ -91,7 +85,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -91,7 +85,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
return new PlaybackInfo( return new PlaybackInfo(
Timeline.EMPTY, Timeline.EMPTY,
DUMMY_MEDIA_PERIOD_ID, DUMMY_MEDIA_PERIOD_ID,
/* startPositionUs= */ 0,
/* contentPositionUs= */ C.TIME_UNSET, /* contentPositionUs= */ C.TIME_UNSET,
Player.STATE_IDLE, Player.STATE_IDLE,
/* playbackError= */ null, /* playbackError= */ null,
...@@ -109,7 +102,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -109,7 +102,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
* *
* @param timeline See {@link #timeline}. * @param timeline See {@link #timeline}.
* @param periodId See {@link #periodId}. * @param periodId See {@link #periodId}.
* @param startPositionUs See {@link #startPositionUs}.
* @param contentPositionUs See {@link #contentPositionUs}. * @param contentPositionUs See {@link #contentPositionUs}.
* @param playbackState See {@link #playbackState}. * @param playbackState See {@link #playbackState}.
* @param isLoading See {@link #isLoading}. * @param isLoading See {@link #isLoading}.
...@@ -123,7 +115,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -123,7 +115,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
public PlaybackInfo( public PlaybackInfo(
Timeline timeline, Timeline timeline,
MediaPeriodId periodId, MediaPeriodId periodId,
long startPositionUs,
long contentPositionUs, long contentPositionUs,
@Player.State int playbackState, @Player.State int playbackState,
@Nullable ExoPlaybackException playbackError, @Nullable ExoPlaybackException playbackError,
...@@ -136,7 +127,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -136,7 +127,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
long positionUs) { long positionUs) {
this.timeline = timeline; this.timeline = timeline;
this.periodId = periodId; this.periodId = periodId;
this.startPositionUs = startPositionUs;
this.contentPositionUs = contentPositionUs; this.contentPositionUs = contentPositionUs;
this.playbackState = playbackState; this.playbackState = playbackState;
this.playbackError = playbackError; this.playbackError = playbackError;
...@@ -178,7 +168,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -178,7 +168,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
return new PlaybackInfo( return new PlaybackInfo(
timeline, timeline,
periodId, periodId,
positionUs,
periodId.isAd() ? contentPositionUs : C.TIME_UNSET, periodId.isAd() ? contentPositionUs : C.TIME_UNSET,
playbackState, playbackState,
playbackError, playbackError,
...@@ -202,7 +191,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -202,7 +191,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
return new PlaybackInfo( return new PlaybackInfo(
timeline, timeline,
periodId, periodId,
startPositionUs,
contentPositionUs, contentPositionUs,
playbackState, playbackState,
playbackError, playbackError,
...@@ -226,7 +214,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -226,7 +214,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
return new PlaybackInfo( return new PlaybackInfo(
timeline, timeline,
periodId, periodId,
startPositionUs,
contentPositionUs, contentPositionUs,
playbackState, playbackState,
playbackError, playbackError,
...@@ -250,7 +237,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -250,7 +237,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
return new PlaybackInfo( return new PlaybackInfo(
timeline, timeline,
periodId, periodId,
startPositionUs,
contentPositionUs, contentPositionUs,
playbackState, playbackState,
playbackError, playbackError,
...@@ -274,7 +260,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -274,7 +260,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
return new PlaybackInfo( return new PlaybackInfo(
timeline, timeline,
periodId, periodId,
startPositionUs,
contentPositionUs, contentPositionUs,
playbackState, playbackState,
playbackError, playbackError,
...@@ -298,7 +283,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult; ...@@ -298,7 +283,6 @@ import com.google.android.exoplayer2.trackselection.TrackSelectorResult;
return new PlaybackInfo( return new PlaybackInfo(
timeline, timeline,
periodId, periodId,
startPositionUs,
contentPositionUs, contentPositionUs,
playbackState, playbackState,
playbackError, playbackError,
......
...@@ -343,7 +343,6 @@ public final class MediaPeriodQueueTest { ...@@ -343,7 +343,6 @@ public final class MediaPeriodQueueTest {
new PlaybackInfo( new PlaybackInfo(
timeline, timeline,
mediaPeriodQueue.resolveMediaPeriodIdForAds(timeline, periodUid, /* positionUs= */ 0), mediaPeriodQueue.resolveMediaPeriodIdForAds(timeline, periodUid, /* positionUs= */ 0),
/* startPositionUs= */ 0,
/* contentPositionUs= */ 0, /* contentPositionUs= */ 0,
Player.STATE_READY, Player.STATE_READY,
/* playbackError= */ null, /* playbackError= */ null,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment