]> git.sesse.net Git - ffmpeg/commitdiff
avformat/mux: factorize AVFormatContext->avoid_negative_ts initialization
authorJames Almer <jamrial@gmail.com>
Mon, 11 Dec 2017 04:02:30 +0000 (01:02 -0300)
committerJames Almer <jamrial@gmail.com>
Tue, 12 Dec 2017 23:18:29 +0000 (20:18 -0300)
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: James Almer <jamrial@gmail.com>
libavformat/mux.c

index effcc1152f78a649a85110e41c4b0e3a53f3d75f..ea9f13fdf5a90946ef4640c2e6e5ba71f914834b 100644 (file)
@@ -445,6 +445,14 @@ static int init_pts(AVFormatContext *s)
         }
     }
 
+    if (s->avoid_negative_ts < 0) {
+        av_assert2(s->avoid_negative_ts == AVFMT_AVOID_NEG_TS_AUTO);
+        if (s->oformat->flags & (AVFMT_TS_NEGATIVE | AVFMT_NOTIMESTAMPS)) {
+            s->avoid_negative_ts = 0;
+        } else
+            s->avoid_negative_ts = AVFMT_AVOID_NEG_TS_MAKE_NON_NEGATIVE;
+    }
+
     return 0;
 }
 
@@ -472,14 +480,6 @@ int avformat_init_output(AVFormatContext *s, AVDictionary **options)
         if ((ret = init_pts(s)) < 0)
             return ret;
 
-        if (s->avoid_negative_ts < 0) {
-            av_assert2(s->avoid_negative_ts == AVFMT_AVOID_NEG_TS_AUTO);
-            if (s->oformat->flags & (AVFMT_TS_NEGATIVE | AVFMT_NOTIMESTAMPS)) {
-                s->avoid_negative_ts = 0;
-            } else
-                s->avoid_negative_ts = AVFMT_AVOID_NEG_TS_MAKE_NON_NEGATIVE;
-        }
-
         return AVSTREAM_INIT_IN_INIT_OUTPUT;
     }
 
@@ -512,14 +512,6 @@ int avformat_write_header(AVFormatContext *s, AVDictionary **options)
     if (!s->internal->streams_initialized) {
         if ((ret = init_pts(s)) < 0)
             goto fail;
-
-        if (s->avoid_negative_ts < 0) {
-            av_assert2(s->avoid_negative_ts == AVFMT_AVOID_NEG_TS_AUTO);
-            if (s->oformat->flags & (AVFMT_TS_NEGATIVE | AVFMT_NOTIMESTAMPS)) {
-                s->avoid_negative_ts = 0;
-            } else
-                s->avoid_negative_ts = AVFMT_AVOID_NEG_TS_MAKE_NON_NEGATIVE;
-        }
     }
 
     return streams_already_initialized;