[FFmpeg-devel] [PATCH] mov: Do not blindly disable advanced edit lists if use_mfra_for is set

Derek Buitenhuis derek.buitenhuis at gmail.com
Thu Apr 20 17:36:56 EEST 2023


This was a bug/mistake in dae3679a9bfa421829ef9049ae2167089a2fdef7.

use_mfra_for by defintion only has an effect on fragmented MP4 files,
making the check not only redundant, but also broken if a user used
the option globally (i.e. set on non-fragmented MP4s).

Signed-off-by: Derek Buitenhuis <derek.buitenhuis at gmail.com>
---
 libavformat/mov.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index 057fd872b1..4f38f7cb78 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -4655,12 +4655,8 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom)
      * Advanced edit list support does not work with fragemented MP4s, which
      * have stsc, stsz, stco, and stts with zero entries in the moov atom.
      * In these files, trun atoms may be streamed in.
-     *
-     * It cannot be used with use_mfra_for = {pts,dts} either, as the index
-     * is not complete, but filled in as more trun atoms are read, as well.
      */
-    if (!sc->stts_count || c->use_mfra_for != FF_MOV_FLAG_MFRA_AUTO &&
-        c->advanced_editlist) {
+    if (!sc->stts_count && c->advanced_editlist) {
 
         av_log(c->fc, AV_LOG_VERBOSE, "advanced_editlist does not work with fragmented "
                                       "MP4. disabling.\n");
-- 
2.39.1



More information about the ffmpeg-devel mailing list