diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java b/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java index 30c46006b6..a10c3bc0f1 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/ProgressiveMediaPeriod.java @@ -523,7 +523,7 @@ import org.checkerframework.checker.nullness.compatqual.NullableType; boolean[] trackIsAudioVideoFlags = getPreparedState().trackIsAudioVideoFlags; if (!pendingDeferredRetry || !trackIsAudioVideoFlags[track] - || sampleQueues[track].hasNextSample()) { + || sampleQueues[track].isReady(/* loadingFinished= */ false)) { return; } pendingResetPositionUs = 0; diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/SampleQueue.java b/library/core/src/main/java/com/google/android/exoplayer2/source/SampleQueue.java index 7e03ee5aa6..6977cf3b12 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/SampleQueue.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/SampleQueue.java @@ -203,11 +203,6 @@ public class SampleQueue implements TrackOutput { } } - /** Returns whether a sample is available to be read. */ - public boolean hasNextSample() { - return metadataQueue.hasNextSample(); - } - /** * Returns the absolute index of the first sample. */ diff --git a/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/ChunkSampleStream.java b/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/ChunkSampleStream.java index efdf927091..32160904c6 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/ChunkSampleStream.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/source/chunk/ChunkSampleStream.java @@ -740,7 +740,7 @@ public class ChunkSampleStream implements SampleStream, S @Override public boolean isReady() { - return loadingFinished || (!isPendingReset() && sampleQueue.hasNextSample()); + return !isPendingReset() && sampleQueue.isReady(loadingFinished); } @Override diff --git a/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/PlayerEmsgHandler.java b/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/PlayerEmsgHandler.java index f7879a18cc..ab7eb18e0d 100644 --- a/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/PlayerEmsgHandler.java +++ b/library/dash/src/main/java/com/google/android/exoplayer2/source/dash/PlayerEmsgHandler.java @@ -355,7 +355,7 @@ public final class PlayerEmsgHandler implements Handler.Callback { // Internal methods. private void parseAndDiscardSamples() { - while (sampleQueue.hasNextSample()) { + while (sampleQueue.isReady(/* loadingFinished= */ false)) { MetadataInputBuffer inputBuffer = dequeueSample(); if (inputBuffer == null) { continue;