summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-05-14 17:14:44 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-05-14 17:14:44 +0200
commitc69b6649cf1e1efab8ede000be5740fca4bef3eb (patch)
tree300cbb9eb0ff95500cd1999843984dc35aaa6c3e /libavformat
parent6d49e819beebe8fb7ed5b0c01ed611b13a8f69ce (diff)
update_initial_durations: add some checks to ensure things match up.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/utils.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 28693e0f0c..a3b389591d 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -938,6 +938,14 @@ static void update_initial_durations(AVFormatContext *s, AVStream *st,
cur_dts -= duration;
}
}
+ if(pktl && pktl->pkt.dts != st->first_dts) {
+ av_log(s, AV_LOG_DEBUG, "first_dts %"PRIi64" not matching first dts %"PRIi64" in que\n", st->first_dts, pktl->pkt.dts);
+ return;
+ }
+ if(!pktl) {
+ av_log(s, AV_LOG_DEBUG, "first_dts %"PRIi64" but no packet with dts in ques\n", st->first_dts);
+ return;
+ }
pktl= s->parse_queue ? s->parse_queue : s->packet_buffer;
st->first_dts = cur_dts;
}else if(st->cur_dts != RELATIVE_TS_BASE)