Commit db1347f6 authored by Michael Niedermayer's avatar Michael Niedermayer

mpegts: cache information to speed up seeking.

Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 27f7589a
...@@ -1778,10 +1778,13 @@ static int64_t mpegts_get_dts(AVFormatContext *s, int stream_index, ...@@ -1778,10 +1778,13 @@ static int64_t mpegts_get_dts(AVFormatContext *s, int stream_index,
if(ret < 0) if(ret < 0)
return AV_NOPTS_VALUE; return AV_NOPTS_VALUE;
av_free_packet(&pkt); av_free_packet(&pkt);
if(pkt.stream_index == stream_index && pkt.dts != AV_NOPTS_VALUE){ if(pkt.dts != AV_NOPTS_VALUE && pkt.pos >= 0){
av_assert0(pkt.pos >= 0); ff_reduce_index(s, pkt.stream_index);
*ppos= pkt.pos; av_add_index_entry(s->streams[pkt.stream_index], pkt.pos, pkt.dts, 0, 0, AVINDEX_KEYFRAME /* FIXME keyframe? */);
return pkt.dts; if(pkt.stream_index == stream_index){
*ppos= pkt.pos;
return pkt.dts;
}
} }
pos = pkt.pos; pos = pkt.pos;
} }
......
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