[MPlayer-cvslog] r37838 - trunk/libmpdemux/demuxer.c

reimar subversion at mplayerhq.hu
Sun Mar 6 14:18:38 CET 2016


Author: reimar
Date: Sun Mar  6 14:18:37 2016
New Revision: 37838

Log:
Print warning when we seem to have bad interleaving.

Should make it easier for users to discover both
the cause and workaround for cases like issue #2196.

Modified:
   trunk/libmpdemux/demuxer.c

Modified: trunk/libmpdemux/demuxer.c
==============================================================================
--- trunk/libmpdemux/demuxer.c	Sun Mar  6 14:00:53 2016	(r37837)
+++ trunk/libmpdemux/demuxer.c	Sun Mar  6 14:18:37 2016	(r37838)
@@ -722,8 +722,15 @@ int ds_fill_buffer(demux_stream_t *ds)
         // This needs to be enough for at least 1 second of packets
         // since libavformat mov demuxer does not try to interleave
         // with more than 1s precision.
-        if (!force_ni && ds->fill_count > 80)
+        if (!force_ni && ds->fill_count > 80) {
+            static int once;
+            if (!once) {
+                mp_msg(MSGT_DEMUXER, MSGL_WARN, "Possibly bad interleaving detected.\n"
+                       "Use -ni option if this causes playback issues and avoid or fix the program that created the file.\n");
+                once = 1;
+            }
             break;
+        }
         // avoid printing the "too many ..." message over and over
         if (ds->eof)
             break;


More information about the MPlayer-cvslog mailing list