avformat/utils: fix calculating the absolute difference of timestamps
[ffmpeg.git] / libavformat / utils.c
index 3246da6..3447b35 100644 (file)
@@ -1105,7 +1105,7 @@ static void compute_pkt_fields(AVFormatContext *s, AVStream *st,
             if (pkt->dts != AV_NOPTS_VALUE &&
                 pkt->pts == AV_NOPTS_VALUE &&
                 st->last_IP_duration > 0 &&
-                (st->cur_dts - next_dts) <= 1 &&
+                ((uint64_t)st->cur_dts - (uint64_t)next_dts + 1) <= 2 &&
                 next_dts != next_pts &&
                 next_pts != AV_NOPTS_VALUE)
                 pkt->pts = next_dts;