diff --git a/src/main/java/com/ddf/vodsystem/services/media/StreamActionsService.java b/src/main/java/com/ddf/vodsystem/services/media/StreamActionsService.java index ec88229..7619dab 100644 --- a/src/main/java/com/ddf/vodsystem/services/media/StreamActionsService.java +++ b/src/main/java/com/ddf/vodsystem/services/media/StreamActionsService.java @@ -80,8 +80,6 @@ public class StreamActionsService { long firstMs = parseTimestampMs(segments.getFirst()); float trimOffset = Math.max(0f, (startTime.toEpochMilli() - firstMs) / 1000f); - // A first segment shorter than the trim offset means the requested start - // lands in a gap after it; drop it and begin at the next recorded footage. if (trimOffset > 0 && probeDurationSeconds(segments.getFirst()) < trimOffset) { segments.removeFirst(); if (segments.isEmpty()) { @@ -91,11 +89,8 @@ public class StreamActionsService { trimOffset = 0f; } - // Segments are copied whole, so playback begins at the first segment's - // boundary rather than at the requested start. Measure the duration from - // there so the section still ends at endTime, lead-in included. - float duration = (endTime.toEpochMilli() - firstMs) / 1000f; + float duration = (endTime.toEpochMilli() - firstMs) / 1000f; return new SegmentSelection(segments, trimOffset, duration); }