summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavformat/mux.c24
1 files changed, 8 insertions, 16 deletions
diff --git a/libavformat/mux.c b/libavformat/mux.c
index effcc1152f..ea9f13fdf5 100644
--- a/libavformat/mux.c
+++ b/libavformat/mux.c
@@ -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;