diff options
author | Martin Storsjö <martin@martin.st> | 2013-09-09 14:35:09 +0300 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2013-09-09 23:58:33 +0300 |
commit | bdf990425e2be6912a6d29f032ca558448c8635a (patch) | |
tree | 674131b32bbbe92765025e4fe9f51ee233e40c57 | |
parent | 8b524ab0c43c1767919530abb79d3656113cdc47 (diff) | |
download | ffmpeg-bdf990425e2be6912a6d29f032ca558448c8635a.tar.gz |
movenc: Simplify setting the fragmentation flag
This makes sure the faststart vs fragmentation check works as
intended when fragmentation is enabled due to using the ismv mode.
Signed-off-by: Martin Storsjö <martin@martin.st>
-rw-r--r-- | libavformat/movenc.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/libavformat/movenc.c b/libavformat/movenc.c index c6c149d47d..46bc6e1036 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -3133,6 +3133,7 @@ static int mov_write_header(AVFormatContext *s) /* Set the FRAGMENT flag if any of the fragmentation methods are * enabled. */ if (mov->max_fragment_duration || mov->max_fragment_size || + (s->oformat && !strcmp(s->oformat->name, "ismv")) || mov->flags & (FF_MOV_FLAG_EMPTY_MOOV | FF_MOV_FLAG_FRAG_KEYFRAME | FF_MOV_FLAG_FRAG_CUSTOM)) @@ -3151,9 +3152,7 @@ static int mov_write_header(AVFormatContext *s) /* Non-seekable output is ok if using fragmentation. If ism_lookahead * is enabled, we don't support non-seekable output at all. */ if (!s->pb->seekable && - ((!(mov->flags & FF_MOV_FLAG_FRAGMENT) && - !(s->oformat && !strcmp(s->oformat->name, "ismv"))) - || mov->ism_lookahead)) { + (!(mov->flags & FF_MOV_FLAG_FRAGMENT) || mov->ism_lookahead)) { av_log(s, AV_LOG_ERROR, "muxer does not support non seekable output\n"); return -1; } @@ -3288,8 +3287,7 @@ static int mov_write_header(AVFormatContext *s) FF_MOV_FLAG_FRAG_CUSTOM)) && !mov->max_fragment_duration && !mov->max_fragment_size) mov->max_fragment_duration = 5000000; - mov->flags |= FF_MOV_FLAG_EMPTY_MOOV | FF_MOV_FLAG_SEPARATE_MOOF | - FF_MOV_FLAG_FRAGMENT; + mov->flags |= FF_MOV_FLAG_EMPTY_MOOV | FF_MOV_FLAG_SEPARATE_MOOF; } if (!(mov->flags & FF_MOV_FLAG_FRAGMENT)) { |