[FFmpeg-devel] [PATCH] avformat/movenc: do not delay writing of a combined moof
Xiaolei Yu
dreifachstein at gmail.com
Sun Dec 1 08:49:56 EET 2024
This is not needed after 2d9d6afb8d2f284f5e620ecc19f643d5cd3facb8.
Fix broken file when muxing with frag_interleave and an empty first track.
Signed-off-by: Xiaolei Yu <dreifachstein at gmail.com>
---
libavformat/movenc.c | 2 +-
tests/fate/mov.mak | 17 +++++++++++++++++
2 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 010d2afa13..0aff12ebb8 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -6428,7 +6428,7 @@ static int mov_flush_fragment(AVFormatContext *s, int force)
mdat_size = avio_tell(track->mdat_buf);
moof_tracks = i;
} else {
- write_moof = i == first_track;
+ write_moof = i == 0;
}
if (write_moof) {
diff --git a/tests/fate/mov.mak b/tests/fate/mov.mak
index ca13ebfd44..aab85bdd31 100644
--- a/tests/fate/mov.mak
+++ b/tests/fate/mov.mak
@@ -284,6 +284,23 @@ fate-mov-mp4-iamf-ambisonic_1: CMD = transcode wav $(SRC) mp4 "-auto_conversion_
-streamid 0:0 -streamid 1:1 -streamid 2:2 -streamid 3:3 -map [MONO0] -map [MONO1] -map [MONO2] -map [MONO3] -c:a flac -t 1" "-c:a copy -map 0" \
"-show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_disposition:stream_group_tags:stream_group_stream=index,id:stream_group_stream_disposition"
+tests/data/fmp4-h264-init.mp4: TAG = GEN
+tests/data/fmp4-h264-init.mp4: ffmpeg$(PROGSSUF)$(EXESUF) | tests/data
+ $(M)$(TARGET_EXEC) $(TARGET_PATH)/$< -nostdin \
+ -i $(TARGET_SAMPLES)/mov/test_iibbibb.mp4 \
+ -c copy -flags +bitexact -movflags empty_moov -frames:v 0 $(TARGET_PATH)/$@ -y 2>/dev/null
+
+FATE_MOV-$(call REMUX, MOV) += fate-mov-frag-interleave-empty-first
+
+# muxing with frag_interleave and an empty first track
+fate-mov-frag-interleave-empty-first: tests/data/fmp4-h264-init.mp4
+fate-mov-frag-interleave-empty-first: SRC = $(TARGET_PATH)/tests/data/fmp4-h264-init.mp4
+fate-mov-frag-interleave-empty-first: SRC2 = $(TARGET_SAMPLES)/mov/test_iibbibb.mp4
+fate-mov-frag-interleave-empty-first: CMD = md5 -i $(SRC) -i $(SRC2) \
+ -c copy -map 0 -map 1 -fflags +bitexact -movflags +empty_moov+skip_trailer -frag_interleave 1 -f mp4
+fate-mov-frag-interleave-empty-first: CMP = oneline
+fate-mov-frag-interleave-empty-first: REF = c83b313f05620e47fe48108bcc30c655
+
FATE_FFMPEG += $(FATE_MOV_FFMPEG-yes)
FATE_FFMPEG_FFPROBE += $(FATE_MOV_FFMPEG_FFPROBE-yes)
--
2.45.2
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20241201/c3827ff5/attachment.sig>
More information about the ffmpeg-devel
mailing list