HLS segment is longer than EXT-X-TARGETDURATION
A segment rounds to more than the declared target duration, which violates the HLS specification.
What it means
The specification requires that every EXTINF duration, rounded to the nearest integer, is less than or equal to EXT-X-TARGETDURATION. At least one of your segments breaks that rule.
Why it matters
Players size their buffer and their playlist reload interval from EXT-X-TARGETDURATION. A segment longer than advertised can exhaust the buffer before the next one arrives, producing a rebuffer that looks like a network problem but is not. Strict players are entitled to reject the playlist outright.
How to fix it
- Raise EXT-X-TARGETDURATION to at least the rounded duration of the longest segment.
- Better, fix the packager so segment durations are consistent — a single long segment usually means a missing keyframe at the intended boundary.
- Check that your encoder GOP length divides evenly into the target segment duration.
Check your own stream
The free HLS analyzer runs this check on every analysis and links each finding straight back here.
Open the HLS analyzer →Frequently asked questions
- What does "HLS segment is longer than EXT-X-TARGETDURATION" mean?
- The specification requires that every EXTINF duration, rounded to the nearest integer, is less than or equal to EXT-X-TARGETDURATION. At least one of your segments breaks that rule.
- Why does it matter?
- Players size their buffer and their playlist reload interval from EXT-X-TARGETDURATION. A segment longer than advertised can exhaust the buffer before the next one arrives, producing a rebuffer that looks like a network problem but is not. Strict players are entitled to reject the playlist outright.
- How do I fix it?
- 1. Raise EXT-X-TARGETDURATION to at least the rounded duration of the longest segment. 2. Better, fix the packager so segment durations are consistent — a single long segment usually means a missing keyframe at the intended boundary. 3. Check that your encoder GOP length divides evenly into the target segment duration.
- How can I detect this automatically?
- Paste your HLS streaming URL into StreamTest's free HLS analyzer. It runs this check on every analysis, flags the finding, and links straight back to this page — no sign-up required.
Related HLS checks
- HLS ladder has a bitrate inversionA lower-resolution variant is allocated more bandwidth than a higher-resolution one, so adaptive switching picks the wrong rendition.
- HLS variant is missing the CODECS attributeWithout CODECS, players must download a segment before they can tell whether they can play the rendition at all.
- HLS variant references an undeclared rendition groupA variant points at an AUDIO or SUBTITLES group that has no matching EXT-X-MEDIA entry, which breaks playback on strict players.
- HLS live window is shorter than three target durationsThe playlist holds too little content, so any player that falls slightly behind runs off the end of the window.
- HLS playlist has no EXT-X-PROGRAM-DATE-TIMEWithout program date-time the stream cannot be mapped to wall-clock time, which breaks DVR seeking and multi-stream alignment.
- HLS live edge has drifted from wall-clock timeThe newest segment’s program date-time is far from the current time, meaning the playlist is stale or the clocks disagree.