In this guide
Finding the target and constructing it are different jobsDo not assume every intra-coded label is equivalentPreserve the start context when diagnosingCompressed video can use temporal dependencies between pictures. A suitable random-access point lets decoding begin with the required context rather than at an arbitrary byte or dependent frame. The precise meaning of keyframe and refresh-point signalling depends on the codec and container.
A player seeking to a requested picture may therefore need to retrieve and decode earlier media before presenting the target. A seekable timeline is not a promise that every position can start independently.
Finding the target and constructing it are different jobs
A container index or another supported seek mechanism helps locate media. The decoder then needs an appropriate starting point and dependent pictures up to the desired position. The player can decode some pictures without displaying them to reach an accurate target.
An original hypothetical stream has a suitable entry point at four seconds, and the viewer requests 5.5 seconds. At a constant 30 frames per second, that spans forty-five frame intervals. The simplified example shows why accurate seeking can require work before the first requested visible picture.
Do not assume every intra-coded label is equivalent
Codec refresh behavior matters. Android’s troubleshooting documentation distinguishes the keyframe types its transport-stream path considers by default. Apple’s HLS authoring specification separately requires video segments to begin with an IDR frame. Those are specific implementation/authoring contexts, not a generic claim that every I-labelled picture supports every start.
| Requirement | Question |
|---|---|
| Index/addressing | Can the player locate relevant media? |
| Random-access point | Where can this decoder start appropriately? |
| Prerequisite configuration | Is initialization/context available? |
| Decode pre-roll | Which pictures must be processed before the target? |
| Presentation target | Which requested picture should first be shown? |
Preserve the start context when diagnosing
Record the requested position, actual resume position, selected configuration and whether new requests were required. Slow retrieval and decoder pre-roll can both contribute to a seek wait. A short GOP or frequent entry points can change some behavior, but encoding and platform tradeoffs remain.
Do not cut a provider resource at arbitrary bytes or edit a keyframe flag as a general repair. Metadata labels do not create the missing coded dependencies or transform the media.
