[FFmpeg-devel] [PATCH v2] avformat/movenc: fix duration in mdhd box

Zhao Zhili quinkblack at foxmail.com
Fri Dec 17 15:50:57 EET 2021


It's the duration of this media, should not take account of
editlist.
---
 libavformat/movenc.c  | 2 +-
 tests/ref/fate/movenc | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 0f912dd012..f76ef430cf 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -2970,7 +2970,7 @@ static int64_t calc_pts_duration(MOVMuxContext *mov, MOVTrack *track)
 static int mov_write_mdhd_tag(AVIOContext *pb, MOVMuxContext *mov,
                               MOVTrack *track)
 {
-    int64_t duration = calc_pts_duration(mov, track);
+    int64_t duration = calc_samples_pts_duration(mov, track);
     int version = duration < INT32_MAX ? 0 : 1;
 
     if (track->mode == MODE_ISM)
diff --git a/tests/ref/fate/movenc b/tests/ref/fate/movenc
index 81ea75f372..19e4e291b8 100644
--- a/tests/ref/fate/movenc
+++ b/tests/ref/fate/movenc
@@ -7,7 +7,7 @@ write_data len 36, time nopts, type header atom ftyp
 write_data len 2761, time nopts, type header atom -
 write_data len 908, time 966667, type sync atom moof
 write_data len 110, time nopts, type trailer atom -
-caf0876986b5f033efc0958c338289cc 3815 non-empty-moov-elst
+9d260d424e9de4626163fd25ccce5bab 3815 non-empty-moov-elst
 write_data len 36, time nopts, type header atom ftyp
 write_data len 2669, time nopts, type header atom -
 write_data len 908, time 1000000, type sync atom moof
-- 
2.31.1



More information about the ffmpeg-devel mailing list