diff --git a/libavformat/utils.c b/libavformat/utils.c index fbc5c8bfe3..ea6dd0d5d3 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -703,7 +703,7 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st, // av_log(NULL, AV_LOG_DEBUG, "IN delayed:%d pts:%"PRId64", dts:%"PRId64" cur_dts:%"PRId64" st:%d pc:%p\n", presentation_delayed, pkt->pts, pkt->dts, st->cur_dts, pkt->stream_index, pc); /* interpolate PTS and DTS if they are not present */ - if(delay <=1){ + if(delay==0 || (delay==1 && pc)){ if (presentation_delayed) { /* DTS = decompression timestamp */ /* PTS = presentation timestamp */