diff --git a/library/src/main/java/com/google/android/exoplayer/dash/mpd/SegmentBase.java b/library/src/main/java/com/google/android/exoplayer/dash/mpd/SegmentBase.java index f93ce33743..c6eec00602 100644 --- a/library/src/main/java/com/google/android/exoplayer/dash/mpd/SegmentBase.java +++ b/library/src/main/java/com/google/android/exoplayer/dash/mpd/SegmentBase.java @@ -148,7 +148,8 @@ public abstract class SegmentBase { * @see DashSegmentIndex#getSegmentNum(long) */ public int getSegmentNum(long timeUs) { - int lowIndex = getFirstSegmentNum(); + final int firstSegmentNum = getFirstSegmentNum(); + int lowIndex = firstSegmentNum; int highIndex = getLastSegmentNum(); if (segmentTimeline == null) { // All segments are of equal duration (with the possible exception of the last one). @@ -171,7 +172,7 @@ public abstract class SegmentBase { return midIndex; } } - return lowIndex - 1; + return lowIndex == firstSegmentNum ? lowIndex : highIndex; } }