diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-05-03 14:57:05 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-05-03 14:57:05 +0200 |
commit | 26b89f62740b2bf30bc7011af7ec0345e30761c7 (patch) | |
tree | 983a8e66fc765acd7ad945dfc16dc4243e201e0e /ffmpeg.c | |
parent | 6b2fbdb047dac1e3a6c6281226df2b76a3896dad (diff) | |
download | ffmpeg-26b89f62740b2bf30bc7011af7ec0345e30761c7.tar.gz |
ffmpeg: use a max variable to hold the maximum dts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'ffmpeg.c')
-rw-r--r-- | ffmpeg.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -613,8 +613,9 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost) if (!(s->oformat->flags & AVFMT_NOTIMESTAMPS) && (avctx->codec_type == AVMEDIA_TYPE_AUDIO || avctx->codec_type == AVMEDIA_TYPE_VIDEO) && pkt->dts != AV_NOPTS_VALUE && - ost->last_mux_dts != AV_NOPTS_VALUE && - pkt->dts < ost->last_mux_dts + !(s->oformat->flags & AVFMT_TS_NONSTRICT)) { + ost->last_mux_dts != AV_NOPTS_VALUE) { + int64_t max = ost->last_mux_dts + !(s->oformat->flags & AVFMT_TS_NONSTRICT); + if (pkt->dts < max) { av_log(NULL, AV_LOG_WARNING, "Non-monotonous DTS in output stream " "%d:%d; previous: %"PRId64", current: %"PRId64"; ", ost->file_index, ost->st->index, ost->last_mux_dts, pkt->dts); @@ -628,6 +629,7 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost) pkt->dts = ost->last_mux_dts + 1; if (pkt->pts != AV_NOPTS_VALUE) pkt->pts = FFMAX(pkt->pts, pkt->dts); + } } ost->last_mux_dts = pkt->dts; |