From a64df69f8553c64d1e5b421cad81af292cc9ca7b Mon Sep 17 00:00:00 2001 From: Oliver Woodman Date: Mon, 26 Jan 2015 14:08:38 +0000 Subject: [PATCH] Refine last segment calculation. This makes the calculation correct for the case where periodDurationMs does not divide exactly into durationMs. --- .../java/com/google/android/exoplayer/dash/mpd/SegmentBase.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 2f9cb9052f..835441bb42 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 @@ -301,7 +301,7 @@ public abstract class SegmentBase { return DashSegmentIndex.INDEX_UNBOUNDED; } else { long durationMs = (duration * 1000) / timescale; - return startNumber + (int) (periodDurationMs / durationMs) - 1; + return startNumber + (int) ((periodDurationMs + durationMs - 1) / durationMs) - 1; } }