diff --git a/libavcodec/parser.c b/libavcodec/parser.c index 4b2853708e..8791c7493d 100644 --- a/libavcodec/parser.c +++ b/libavcodec/parser.c @@ -134,12 +134,14 @@ int av_parser_parse(AVCodecParserContext *s, buf = dummy_buf; } else { /* add a new packet descriptor */ + if(pts != AV_NOPTS_VALUE || dts != AV_NOPTS_VALUE){ i = (s->cur_frame_start_index + 1) & (AV_PARSER_PTS_NB - 1); s->cur_frame_start_index = i; s->cur_frame_offset[i] = s->cur_offset; s->cur_frame_end[i] = s->cur_offset + buf_size; s->cur_frame_pts[i] = pts; s->cur_frame_dts[i] = dts; + } } if (s->fetch_timestamp){