mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00
Fix most IntDef violations in MediaControllerImplLegacy
This commit doesn't resolve all the violations. Specifically, INDEX_UNSET is still being incorrectly passed as various IntDef values to the PlayerInfo constructor, but making these parameters (and the corresponding PlayerInfo fields) @Nullable is a more involved change (and it's not obvious at what point we can guarantee the value will be non-null/non-INDEX_UNSET), so it's left for a later commit. PiperOrigin-RevId: 407294091
This commit is contained in:
parent
8f88127b8e
commit
043a80a5ba
@ -204,8 +204,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
|
|
||||||
controllerCompat.getTransportControls().stop();
|
controllerCompat.getTransportControls().stop();
|
||||||
}
|
}
|
||||||
@ -254,8 +254,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
|
|
||||||
if (pendingSetMediaUriRequest == null) {
|
if (pendingSetMediaUriRequest == null) {
|
||||||
controllerCompat.getTransportControls().play();
|
controllerCompat.getTransportControls().play();
|
||||||
@ -298,8 +298,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
|
|
||||||
controllerCompat.getTransportControls().pause();
|
controllerCompat.getTransportControls().pause();
|
||||||
}
|
}
|
||||||
@ -318,8 +318,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
|
|
||||||
if (pendingSetMediaUriRequest == null) {
|
if (pendingSetMediaUriRequest == null) {
|
||||||
controllerCompat.getTransportControls().prepare();
|
controllerCompat.getTransportControls().prepare();
|
||||||
@ -381,7 +381,9 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
int newMediaItemIndex = currentMediaItemIndex;
|
int newMediaItemIndex = currentMediaItemIndex;
|
||||||
@MediaItemTransitionReason int mediaItemTransitionReason = C.INDEX_UNSET;
|
@Nullable
|
||||||
|
@MediaItemTransitionReason
|
||||||
|
Integer mediaItemTransitionReason = null;
|
||||||
if (mediaItemIndex != currentMediaItemIndex) {
|
if (mediaItemIndex != currentMediaItemIndex) {
|
||||||
QueueTimeline queueTimeline = (QueueTimeline) controllerInfo.playerInfo.timeline;
|
QueueTimeline queueTimeline = (QueueTimeline) controllerInfo.playerInfo.timeline;
|
||||||
long queueId = queueTimeline.getQueueId(mediaItemIndex);
|
long queueId = queueTimeline.getQueueId(mediaItemIndex);
|
||||||
@ -397,12 +399,14 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
+ mediaItemIndex);
|
+ mediaItemIndex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@DiscontinuityReason int discontinuityReason;
|
@Nullable
|
||||||
|
@DiscontinuityReason
|
||||||
|
Integer discontinuityReason;
|
||||||
long currentPositionMs = getCurrentPosition();
|
long currentPositionMs = getCurrentPosition();
|
||||||
long newPositionMs;
|
long newPositionMs;
|
||||||
if (positionMs == C.TIME_UNSET) {
|
if (positionMs == C.TIME_UNSET) {
|
||||||
newPositionMs = currentPositionMs;
|
newPositionMs = currentPositionMs;
|
||||||
discontinuityReason = C.INDEX_UNSET;
|
discontinuityReason = null;
|
||||||
} else {
|
} else {
|
||||||
controllerCompat.getTransportControls().seekTo(positionMs);
|
controllerCompat.getTransportControls().seekTo(positionMs);
|
||||||
newPositionMs = positionMs;
|
newPositionMs = positionMs;
|
||||||
@ -413,7 +417,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
long newBufferedPositionMs;
|
long newBufferedPositionMs;
|
||||||
int newBufferedPercentage;
|
int newBufferedPercentage;
|
||||||
long newTotalBufferedDurationMs;
|
long newTotalBufferedDurationMs;
|
||||||
if (mediaItemTransitionReason == C.INDEX_UNSET) {
|
if (mediaItemTransitionReason == null) {
|
||||||
// Follows the ExoPlayerImpl's state masking for seek within the current item.
|
// Follows the ExoPlayerImpl's state masking for seek within the current item.
|
||||||
long oldBufferedPositionMs = getBufferedPosition();
|
long oldBufferedPositionMs = getBufferedPosition();
|
||||||
newDurationMs = getDuration();
|
newDurationMs = getDuration();
|
||||||
@ -598,8 +602,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
|
|
||||||
controllerCompat.getTransportControls().setPlaybackSpeed(playbackParameters.speed);
|
controllerCompat.getTransportControls().setPlaybackSpeed(playbackParameters.speed);
|
||||||
@ -617,8 +621,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
|
|
||||||
controllerCompat.getTransportControls().setPlaybackSpeed(speed);
|
controllerCompat.getTransportControls().setPlaybackSpeed(speed);
|
||||||
@ -756,8 +760,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
|
|
||||||
for (int i = 0; i < mediaItems.size(); i++) {
|
for (int i = 0; i < mediaItems.size(); i++) {
|
||||||
MediaItem mediaItem = mediaItems.get(i);
|
MediaItem mediaItem = mediaItems.get(i);
|
||||||
@ -805,8 +809,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
|
|
||||||
for (int i = fromIndex; i < toIndex && i < legacyPlayerInfo.queue.size(); i++) {
|
for (int i = fromIndex; i < toIndex && i < legacyPlayerInfo.queue.size(); i++) {
|
||||||
controllerCompat.removeQueueItem(legacyPlayerInfo.queue.get(i).getDescription());
|
controllerCompat.removeQueueItem(legacyPlayerInfo.queue.get(i).getDescription());
|
||||||
@ -865,8 +869,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
|
|
||||||
ArrayList<QueueItem> moveItems = new ArrayList<>();
|
ArrayList<QueueItem> moveItems = new ArrayList<>();
|
||||||
for (int i = 0; i < (toIndex - fromIndex); i++) {
|
for (int i = 0; i < (toIndex - fromIndex); i++) {
|
||||||
@ -956,8 +960,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
|
|
||||||
controllerCompat
|
controllerCompat
|
||||||
@ -982,8 +986,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
|
|
||||||
controllerCompat
|
controllerCompat
|
||||||
@ -1088,8 +1092,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
|
|
||||||
controllerCompat.setVolumeTo(volume, VOLUME_FLAGS);
|
controllerCompat.setVolumeTo(volume, VOLUME_FLAGS);
|
||||||
@ -1110,8 +1114,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
controllerCompat.adjustVolume(AudioManager.ADJUST_RAISE, VOLUME_FLAGS);
|
controllerCompat.adjustVolume(AudioManager.ADJUST_RAISE, VOLUME_FLAGS);
|
||||||
}
|
}
|
||||||
@ -1131,8 +1135,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
controllerCompat.adjustVolume(AudioManager.ADJUST_LOWER, VOLUME_FLAGS);
|
controllerCompat.adjustVolume(AudioManager.ADJUST_LOWER, VOLUME_FLAGS);
|
||||||
}
|
}
|
||||||
@ -1155,8 +1159,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerInfo.customLayout);
|
controllerInfo.customLayout);
|
||||||
updateStateMaskedControllerInfo(
|
updateStateMaskedControllerInfo(
|
||||||
maskedControllerInfo,
|
maskedControllerInfo,
|
||||||
/* discontinuityReason= */ C.INDEX_UNSET,
|
/* discontinuityReason= */ null,
|
||||||
/* mediaItemTransitionReason= */ C.INDEX_UNSET);
|
/* mediaItemTransitionReason= */ null);
|
||||||
}
|
}
|
||||||
|
|
||||||
int direction = muted ? AudioManager.ADJUST_MUTE : AudioManager.ADJUST_UNMUTE;
|
int direction = muted ? AudioManager.ADJUST_MUTE : AudioManager.ADJUST_UNMUTE;
|
||||||
@ -1302,7 +1306,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
controllerCompat.isSessionReady(),
|
controllerCompat.isSessionReady(),
|
||||||
controllerCompat.getRatingType(),
|
controllerCompat.getRatingType(),
|
||||||
instance.timeDiffMs);
|
instance.timeDiffMs);
|
||||||
Pair<Integer, Integer> reasons =
|
Pair<@NullableType Integer, @NullableType Integer> reasons =
|
||||||
calculateDiscontinuityAndTransitionReason(
|
calculateDiscontinuityAndTransitionReason(
|
||||||
legacyPlayerInfo,
|
legacyPlayerInfo,
|
||||||
controllerInfo,
|
controllerInfo,
|
||||||
@ -1319,8 +1323,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
|
|
||||||
private void updateStateMaskedControllerInfo(
|
private void updateStateMaskedControllerInfo(
|
||||||
ControllerInfo newControllerInfo,
|
ControllerInfo newControllerInfo,
|
||||||
@Player.DiscontinuityReason int discontinuityReason,
|
@Nullable @Player.DiscontinuityReason Integer discontinuityReason,
|
||||||
@Player.MediaItemTransitionReason int mediaItemTransitionReason) {
|
@Nullable @Player.MediaItemTransitionReason Integer mediaItemTransitionReason) {
|
||||||
// Safe to pass legacyPlayerInfo without updating.
|
// Safe to pass legacyPlayerInfo without updating.
|
||||||
// updateControllerInfo() takes LegacyPlayerInfo just to easily detect some changes in the
|
// updateControllerInfo() takes LegacyPlayerInfo just to easily detect some changes in the
|
||||||
// controller info, and LegacyPlayerInfo isn't used for values that state-masking may be
|
// controller info, and LegacyPlayerInfo isn't used for values that state-masking may be
|
||||||
@ -1337,8 +1341,8 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
boolean notifyConnected,
|
boolean notifyConnected,
|
||||||
LegacyPlayerInfo newLegacyPlayerInfo,
|
LegacyPlayerInfo newLegacyPlayerInfo,
|
||||||
ControllerInfo newControllerInfo,
|
ControllerInfo newControllerInfo,
|
||||||
@Player.DiscontinuityReason int discontinuityReason,
|
@Nullable @Player.DiscontinuityReason Integer discontinuityReason,
|
||||||
@Player.MediaItemTransitionReason int mediaItemTransitionReason) {
|
@Nullable @Player.MediaItemTransitionReason Integer mediaItemTransitionReason) {
|
||||||
LegacyPlayerInfo oldLegacyPlayerInfo = legacyPlayerInfo;
|
LegacyPlayerInfo oldLegacyPlayerInfo = legacyPlayerInfo;
|
||||||
ControllerInfo oldControllerInfo = controllerInfo;
|
ControllerInfo oldControllerInfo = controllerInfo;
|
||||||
if (legacyPlayerInfo != newLegacyPlayerInfo) {
|
if (legacyPlayerInfo != newLegacyPlayerInfo) {
|
||||||
@ -1370,7 +1374,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
(listener) ->
|
(listener) ->
|
||||||
listener.onPlaylistMetadataChanged(newControllerInfo.playerInfo.playlistMetadata));
|
listener.onPlaylistMetadataChanged(newControllerInfo.playerInfo.playlistMetadata));
|
||||||
}
|
}
|
||||||
if (discontinuityReason != C.INDEX_UNSET) {
|
if (discontinuityReason != null) {
|
||||||
listeners.queueEvent(
|
listeners.queueEvent(
|
||||||
Player.EVENT_POSITION_DISCONTINUITY,
|
Player.EVENT_POSITION_DISCONTINUITY,
|
||||||
(listener) ->
|
(listener) ->
|
||||||
@ -1379,7 +1383,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
newControllerInfo.playerInfo.sessionPositionInfo.positionInfo,
|
newControllerInfo.playerInfo.sessionPositionInfo.positionInfo,
|
||||||
discontinuityReason));
|
discontinuityReason));
|
||||||
}
|
}
|
||||||
if (mediaItemTransitionReason != C.INDEX_UNSET) {
|
if (mediaItemTransitionReason != null) {
|
||||||
listeners.queueEvent(
|
listeners.queueEvent(
|
||||||
EVENT_MEDIA_ITEM_TRANSITION,
|
EVENT_MEDIA_ITEM_TRANSITION,
|
||||||
(listener) ->
|
(listener) ->
|
||||||
@ -1837,24 +1841,33 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
seekForwardIncrementMs);
|
seekForwardIncrementMs);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Calculate position discontinuity reason and media item transition reason outside of the state
|
/**
|
||||||
// masking.
|
* Calculate position discontinuity reason and media item transition reason outside of the state
|
||||||
private static Pair<Integer, Integer> calculateDiscontinuityAndTransitionReason(
|
* masking.
|
||||||
LegacyPlayerInfo oldLegacyPlayerInfo,
|
*
|
||||||
ControllerInfo oldControllerInfo,
|
* <p>The returned reasons may be null if they can't be determined.
|
||||||
LegacyPlayerInfo newLegacyPlayerInfo,
|
*/
|
||||||
ControllerInfo newControllerInfo,
|
private static Pair<@NullableType Integer, @NullableType Integer>
|
||||||
long timeDiffMs) {
|
calculateDiscontinuityAndTransitionReason(
|
||||||
@Player.DiscontinuityReason int discontinuityReason;
|
LegacyPlayerInfo oldLegacyPlayerInfo,
|
||||||
@Player.MediaItemTransitionReason int mediaItemTransitionReason;
|
ControllerInfo oldControllerInfo,
|
||||||
|
LegacyPlayerInfo newLegacyPlayerInfo,
|
||||||
|
ControllerInfo newControllerInfo,
|
||||||
|
long timeDiffMs) {
|
||||||
|
@Nullable
|
||||||
|
@Player.DiscontinuityReason
|
||||||
|
Integer discontinuityReason;
|
||||||
|
@Nullable
|
||||||
|
@Player.MediaItemTransitionReason
|
||||||
|
Integer mediaItemTransitionReason;
|
||||||
boolean isOldTimelineEmpty = oldControllerInfo.playerInfo.timeline.isEmpty();
|
boolean isOldTimelineEmpty = oldControllerInfo.playerInfo.timeline.isEmpty();
|
||||||
boolean isNewTimelineEmpty = newControllerInfo.playerInfo.timeline.isEmpty();
|
boolean isNewTimelineEmpty = newControllerInfo.playerInfo.timeline.isEmpty();
|
||||||
int newCurrentMediaItemIndex =
|
int newCurrentMediaItemIndex =
|
||||||
newControllerInfo.playerInfo.sessionPositionInfo.positionInfo.mediaItemIndex;
|
newControllerInfo.playerInfo.sessionPositionInfo.positionInfo.mediaItemIndex;
|
||||||
if (isOldTimelineEmpty && isNewTimelineEmpty) {
|
if (isOldTimelineEmpty && isNewTimelineEmpty) {
|
||||||
// Still empty Timelines.
|
// Still empty Timelines.
|
||||||
discontinuityReason = C.INDEX_UNSET;
|
discontinuityReason = null;
|
||||||
mediaItemTransitionReason = C.INDEX_UNSET;
|
mediaItemTransitionReason = null;
|
||||||
} else if (isOldTimelineEmpty && !isNewTimelineEmpty) {
|
} else if (isOldTimelineEmpty && !isNewTimelineEmpty) {
|
||||||
// A new timeline has been set.
|
// A new timeline has been set.
|
||||||
discontinuityReason = Player.DISCONTINUITY_REASON_AUTO_TRANSITION;
|
discontinuityReason = Player.DISCONTINUITY_REASON_AUTO_TRANSITION;
|
||||||
@ -1888,10 +1901,10 @@ import org.checkerframework.checker.nullness.compatqual.NullableType;
|
|||||||
} else if (Math.abs(oldCurrentPosition - newCurrentPosition) > POSITION_DIFF_TOLERANCE_MS) {
|
} else if (Math.abs(oldCurrentPosition - newCurrentPosition) > POSITION_DIFF_TOLERANCE_MS) {
|
||||||
// Unexpected position discontinuity within the same media item.
|
// Unexpected position discontinuity within the same media item.
|
||||||
discontinuityReason = Player.DISCONTINUITY_REASON_INTERNAL;
|
discontinuityReason = Player.DISCONTINUITY_REASON_INTERNAL;
|
||||||
mediaItemTransitionReason = C.INDEX_UNSET;
|
mediaItemTransitionReason = null;
|
||||||
} else {
|
} else {
|
||||||
discontinuityReason = C.INDEX_UNSET;
|
discontinuityReason = null;
|
||||||
mediaItemTransitionReason = C.INDEX_UNSET;
|
mediaItemTransitionReason = null;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Old current item still exists, but it's not the new current media item anymore.
|
// Old current item still exists, but it's not the new current media item anymore.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user