diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 098e2d2681..f878ced0fa 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -3313,7 +3313,8 @@ static int mov_write_traf_tag(AVIOContext *pb, MOVMuxContext *mov, ffio_wfourcc(pb, "traf"); mov_write_tfhd_tag(pb, mov, track, moof_offset); - mov_write_tfdt_tag(pb, track); + if (mov->mode != MODE_ISM) + mov_write_tfdt_tag(pb, track); mov_write_trun_tag(pb, mov, track, moof_size); if (mov->mode == MODE_ISM) { mov_write_tfxd_tag(pb, track); @@ -3488,7 +3489,7 @@ static int mov_write_ftyp_tag(AVIOContext *pb, AVFormatContext *s) // We add tfdt atoms when fragmenting, signal this with the iso6 compatible // brand. This is compatible with users that don't understand tfdt. - if (mov->flags & FF_MOV_FLAG_FRAGMENT) + if (mov->flags & FF_MOV_FLAG_FRAGMENT && mov->mode != MODE_ISM) ffio_wfourcc(pb, "iso6"); if (mov->mode == MODE_3GP) diff --git a/tests/ref/lavf/ismv b/tests/ref/lavf/ismv index c87cf6e471..2c8d92c292 100644 --- a/tests/ref/lavf/ismv +++ b/tests/ref/lavf/ismv @@ -1,9 +1,9 @@ -56193aebd2845871f4e91956b3e4dea5 *./tests/data/lavf/lavf.ismv -312610 ./tests/data/lavf/lavf.ismv +17b0b8eff852edd25fa38aed062689d7 *./tests/data/lavf/lavf.ismv +312546 ./tests/data/lavf/lavf.ismv ./tests/data/lavf/lavf.ismv CRC=0xb7d29d29 -19c7e128c52d7a1d7a1921d60774a785 *./tests/data/lavf/lavf.ismv -321516 ./tests/data/lavf/lavf.ismv +543e5146df7bd4b7eb7edc94e0034ad9 *./tests/data/lavf/lavf.ismv +321452 ./tests/data/lavf/lavf.ismv ./tests/data/lavf/lavf.ismv CRC=0x33834815 -56193aebd2845871f4e91956b3e4dea5 *./tests/data/lavf/lavf.ismv -312610 ./tests/data/lavf/lavf.ismv +17b0b8eff852edd25fa38aed062689d7 *./tests/data/lavf/lavf.ismv +312546 ./tests/data/lavf/lavf.ismv ./tests/data/lavf/lavf.ismv CRC=0xb7d29d29