[FFmpeg-cvslog] ffmpeg: port loglevel selection code to new dts workaround code

Michael Niedermayer git at videolan.org
Fri May 3 15:11:59 CEST 2013


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Fri May  3 15:02:43 2013 +0200| [b2a1d92b7b30c75277cb8bd33221458f5cc589da] | committer: Michael Niedermayer

ffmpeg: port loglevel selection code to new dts workaround code

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b2a1d92b7b30c75277cb8bd33221458f5cc589da
---

 ffmpeg.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index 88da0d7..6017691 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -616,14 +616,15 @@ static void write_frame(AVFormatContext *s, AVPacket *pkt, OutputStream *ost)
         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 "
+        int loglevel = max - pkt->dts > 2 || avctx->codec_type == AVMEDIA_TYPE_VIDEO ? AV_LOG_WARNING : AV_LOG_DEBUG;
+        av_log(NULL, loglevel, "Non-monotonous DTS in output stream "
                "%d:%d; previous: %"PRId64", current: %"PRId64"; ",
                ost->file_index, ost->st->index, ost->last_mux_dts, pkt->dts);
         if (exit_on_error) {
             av_log(NULL, AV_LOG_FATAL, "aborting.\n");
             exit(1);
         }
-        av_log(NULL, AV_LOG_WARNING, "changing to %"PRId64". This may result "
+        av_log(NULL, loglevel, "changing to %"PRId64". This may result "
                "in incorrect timestamps in the output file.\n",
                max);
         if(pkt->pts >= pkt->dts)



More information about the ffmpeg-cvslog mailing list