[FFmpeg-devel] Seeking in Apple HTTP Live Streaming

Takis Issaris t4k1s at yahoo.com
Mon Nov 21 17:21:28 CET 2011

Hi all,

As a follow-up to my previous patch, I'd like to implement more exact seeking on HTTP Live Streams. Currently, when seeking to a specific timestamp in such a stream, the seeking results in arriving at the start of the correct segment, but not at the requested timestamp within that segment. Worse, when seeking to a specific timestamp which happens to be a part of the segment which is currently being played, the playback resets to the start of the current timestamp (that could most likely be fixed rather easily). So, when pressing forward arrow key when using ffplay, you'll actually move backwards to the start of the segment (if current timestamp+10s lies within the current segment).

I'd like to change that so that the applehttp.c seeking implementation uses mpegts.c to actually seek to the specified timestamp, but I'm not sure on how to implement this.
Currently, when seeking using applehttp_read_seek, I think there's no valid MPEG-TS demuxer context in that function. Should I make sure I get a valid demuxer there, or should I defer the actual seeking using the MPEG-TS demuxer until a valid demuxer is constructed elsewhere in the applehttp.c file?

With friendly regards,

More information about the ffmpeg-devel mailing list