diff --git a/libavcodec/parser.c b/libavcodec/parser.c index 0bc9091fe3..47c7e714a8 100644 --- a/libavcodec/parser.c +++ b/libavcodec/parser.c @@ -78,11 +78,12 @@ AVCodecParserContext *av_parser_init(int codec_id) void ff_fetch_timestamp(AVCodecParserContext *s, int off, int remove){ int i; + s->dts= s->pts= AV_NOPTS_VALUE; s->offset= 0; for(i = 0; i < AV_PARSER_PTS_NB; i++) { if ( s->next_frame_offset + off >= s->cur_frame_offset[i] - &&(s-> frame_offset < s->cur_frame_offset[i] || !s->frame_offset) + &&(s-> frame_offset < s->cur_frame_offset[i] || !s->frame_offset) && s->next_frame_offset + off < s->cur_frame_end[i]){ s->dts= s->cur_frame_dts[i]; s->pts= s->cur_frame_pts[i];