From 811a0aa785569affda577888908c66526ee2d0d9 Mon Sep 17 00:00:00 2001
From: Baptiste Coudurier <baptiste.coudurier@gmail.com>
Date: Wed, 14 Jan 2009 22:40:37 +0000
Subject: [PATCH] warn if dts < pcr which means TS is invalid

Originally committed as revision 16607 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavformat/mpegtsenc.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
index 77815d09494..6c31f6df512 100644
--- a/libavformat/mpegtsenc.c
+++ b/libavformat/mpegtsenc.c
@@ -539,6 +539,8 @@ static void mpegts_write_pes(AVFormatContext *s, AVStream *st,
         if (write_pcr) {
             // add 11, pcr references the last byte of program clock reference base
             pcr = ts->cur_pcr + (4+7)*8*90000LL / ts->mux_rate;
+            if (dts != AV_NOPTS_VALUE && dts < pcr)
+                av_log(s, AV_LOG_WARNING, "dts < pcr, TS is invalid\n");
             *q++ = 7; /* AFC length */
             *q++ = 0x10; /* flags: PCR present */
             *q++ = pcr >> 25;
-- 
GitLab