Commit f29cb45b authored by Anssi Hannula's avatar Anssi Hannula

avformat/hls: flush the subdemuxer when seeking

Since we are basically seeking the AVIOContext under the subdemuxer, we
need to flush the subdemuxer to avoid old packets from being read from
the packet queue after the seek.
Signed-off-by: 's avatarAnssi Hannula <anssi.hannula@iki.fi>
parent 9aa0606e
...@@ -1629,6 +1629,8 @@ static int hls_read_seek(AVFormatContext *s, int stream_index, ...@@ -1629,6 +1629,8 @@ static int hls_read_seek(AVFormatContext *s, int stream_index,
pls->pb.buf_end = pls->pb.buf_ptr = pls->pb.buffer; pls->pb.buf_end = pls->pb.buf_ptr = pls->pb.buffer;
/* Reset the pos, to let the mpegts demuxer know we've seeked. */ /* Reset the pos, to let the mpegts demuxer know we've seeked. */
pls->pb.pos = 0; pls->pb.pos = 0;
/* Flush the packet queue of the subdemuxer. */
ff_read_frame_flush(pls->ctx);
pls->seek_timestamp = seek_timestamp; pls->seek_timestamp = seek_timestamp;
pls->seek_flags = flags; pls->seek_flags = flags;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment