For fragmented files with non-empty moov, with a fragment index
(sidx), place the index after the initial moov/mdat pair.
Previously, for this pathological case, the index was written
at the start of the file.
---
libavformat/movenc.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index feb6a84..bb2504f 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -3242,6 +3242,9 @@ static int mov_flush_fragment(AVFormatContext *s)
avio_write(s->pb, buf, buf_size);
av_free(buf);
+ if (mov->flags & FF_MOV_FLAG_FASTSTART)
+ mov->reserved_header_pos = avio_tell(s->pb);
+
mov->moov_written = 1;
mov->mdat_size = 0;
for (i = 0; i < mov->nb_streams; i++) {
--
2.3.2 (Apple Git-55)
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel