From b0d98a2e22d165faaee485aa3e71d19eda2d5006 Mon Sep 17 00:00:00 2001 From: tonihei Date: Wed, 10 Jun 2020 10:57:23 +0100 Subject: [PATCH] Find correct next chunk if previous one didn't finish loading. If the previous chunk didn't finish loading, we need to find the appropriate next chunk based on the current loading position (or the previous chunk's start time if not independent). PiperOrigin-RevId: 315658435 --- .../google/android/exoplayer2/source/hls/HlsChunkSource.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java index 2dc3c0771a..21d1bc4d6b 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsChunkSource.java @@ -505,9 +505,7 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull; /* stayInBounds= */ !playlistTracker.isLive() || previous == null) + mediaPlaylist.mediaSequence; } - // We ignore the case of previous not having loaded completely, in which case we load the next - // segment. - return previous.getNextChunkIndex(); + return previous.isLoadCompleted() ? previous.getNextChunkIndex() : previous.chunkIndex; } private long resolveTimeToLiveEdgeUs(long playbackPositionUs) {