diff --git a/library/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java b/library/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java index 3b7b107e2b..1044fc8c39 100644 --- a/library/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java +++ b/library/src/main/java/com/google/android/exoplayer2/ExoPlayerImplInternal.java @@ -1051,7 +1051,7 @@ import java.io.IOException; private void maybeContinueLoading() { long nextLoadPositionUs = loadingPeriod.mediaPeriod.getNextLoadPositionUs(); if (nextLoadPositionUs != C.END_OF_SOURCE_US) { - long positionUs = internalPositionUs - loadingPeriod.offsetUs; + long positionUs = internalPositionUs - loadingPeriod.offsetUs + loadingPeriod.startPositionUs; long bufferedDurationUs = nextLoadPositionUs - positionUs; boolean continueLoading = loadControl.shouldContinueLoading(bufferedDurationUs); setIsLoading(continueLoading); diff --git a/library/src/main/java/com/google/android/exoplayer2/source/ConcatenatingMediaSource.java b/library/src/main/java/com/google/android/exoplayer2/source/ConcatenatingMediaSource.java index 59466e1524..5c4bdf422c 100644 --- a/library/src/main/java/com/google/android/exoplayer2/source/ConcatenatingMediaSource.java +++ b/library/src/main/java/com/google/android/exoplayer2/source/ConcatenatingMediaSource.java @@ -226,7 +226,7 @@ public final class ConcatenatingMediaSource implements MediaSource { @Override public long getWindowOffsetInFirstPeriodUs(int windowIndex) { int sourceIndex = getSourceIndexForWindow(windowIndex); - int firstWindowIndexInSource = getFirstPeriodIndexInSource(sourceIndex); + int firstWindowIndexInSource = getFirstWindowIndexInSource(sourceIndex); return timelines[sourceIndex].getWindowOffsetInFirstPeriodUs( windowIndex - firstWindowIndexInSource); }