aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhao Zhili <quinkblack@foxmail.com>2022-01-10 18:18:44 +0800
committerMartin Storsjö <martin@martin.st>2022-01-10 12:32:21 +0200
commitf37e66b3937a914e16d89a9050f042ad89567245 (patch)
tree5b8a3ac88b2291a9220509707e8fa22eb4d5e849
parentecf09764dcfc4d90d2292d91f225bfd02211a17f (diff)
downloadffmpeg-f37e66b3937a914e16d89a9050f042ad89567245.tar.gz
avformat/movenc: fix duration in mdhd box
mvhd and tkhd present the post-editlist duration, while mdhd should have the pre-editlist duration. Regression since c2424b1f3. Signed-off-by: Martin Storsjö <martin@martin.st>
-rw-r--r--libavformat/movenc.c2
-rw-r--r--tests/ref/fate/copy-trac30742
-rw-r--r--tests/ref/fate/mov-cover-image2
-rw-r--r--tests/ref/fate/mov-mp4-disposition-mpegts-remux2
-rw-r--r--tests/ref/fate/movenc2
5 files changed, 5 insertions, 5 deletions
diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index ab33371296..4c868919ae 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -2960,7 +2960,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/copy-trac3074 b/tests/ref/fate/copy-trac3074
index 4748296c2a..2ef7e702cd 100644
--- a/tests/ref/fate/copy-trac3074
+++ b/tests/ref/fate/copy-trac3074
@@ -1,4 +1,4 @@
-452d91e7c6889b787717fef25b6fce43 *tests/data/fate/copy-trac3074.mp4
+36fcc0a62695bcf93068fcfe68283ee9 *tests/data/fate/copy-trac3074.mp4
334016 tests/data/fate/copy-trac3074.mp4
#tb 0: 1/48000
#media_type 0: audio
diff --git a/tests/ref/fate/mov-cover-image b/tests/ref/fate/mov-cover-image
index 680d84e061..6141646afa 100644
--- a/tests/ref/fate/mov-cover-image
+++ b/tests/ref/fate/mov-cover-image
@@ -1,4 +1,4 @@
-4e92f776010bd7a727c11bf8c34cde1e *tests/data/fate/mov-cover-image.mp4
+54a8870d5d1e6cc4da28ae422aa70898 *tests/data/fate/mov-cover-image.mp4
1011919 tests/data/fate/mov-cover-image.mp4
#extradata 0: 2, 0x00340022
#tb 0: 1/44100
diff --git a/tests/ref/fate/mov-mp4-disposition-mpegts-remux b/tests/ref/fate/mov-mp4-disposition-mpegts-remux
index 78f1668f65..184b952e04 100644
--- a/tests/ref/fate/mov-mp4-disposition-mpegts-remux
+++ b/tests/ref/fate/mov-mp4-disposition-mpegts-remux
@@ -1,4 +1,4 @@
-3c4432fe59ffd9f2ed6ba4b122cea935 *tests/data/fate/mov-mp4-disposition-mpegts-remux.mp4
+adb3b95c07a5f3e0c86641dd62f01dae *tests/data/fate/mov-mp4-disposition-mpegts-remux.mp4
5709 tests/data/fate/mov-mp4-disposition-mpegts-remux.mp4
#tb 0: 1/48000
#media_type 0: audio
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