From patchwork Fri Dec 17 13:58:21 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 32684 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp1587120iog; Fri, 17 Dec 2021 05:58:34 -0800 (PST) X-Google-Smtp-Source: ABdhPJzBSCEBArVu7A1x3YO5Clq90cHZPXBvRz5WysUXHgnl7AiXVaLaJlT/gt5c9WvnZ+JKgr9I X-Received: by 2002:a17:907:6290:: with SMTP id nd16mr2593715ejc.578.1639749514608; Fri, 17 Dec 2021 05:58:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1639749514; cv=none; d=google.com; s=arc-20160816; b=BBdjSvi+AJCSyg7kq5MK2SsKCrlCcD0rL8dge1Nemj60LOZOVF/+yIHLvmzbN86xZu panIlQJE7ZRS8Qj+rLHlYbVzeFeEQz0ZtYNmhwFpaE2R1+AUVAEhzWA6/MK9MMRLcfSZ 1tzxxPuLlnocb1VUjFXvILjIfjGcqSd0tx64b19CODT/j0BfWqt9YGmM3UObI8DvTeUc /VjeaXhEW6ZDIbHsbD9qNNFlt4lmxq/Mg6gPVIsuYQiKSDjsHAaAbg8ubYp3NyjZy/8W fi6Jm035tRO0EbPeWGg5momiROhptmxPT6cVXFrPPbhsqsTVP+ahQ081QqnN/bgo32w4 gPDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to:date :to:from:message-id:dkim-signature:delivered-to; bh=gWruL15ukiaugVuUFpBS73/8Se9kXSrbOZe1MSTcE+s=; b=kxwfKDjiKgCjCPORFWdwhU7/jwluq3+LlvlipreKkdwFejhRpQ0S6oi7e7Wb0L1Ooy Krhic771Wd3zBQyp+nkU16AVYEN9JgN227jGp1v1Yw0UCgHWI3K8o1b8Mo+VgDpPlxTW zG9Fi01hFu/VtSDH4UCVz1vGYeOCPvrKHBI3z12nKXm/bTsRM603Q3s90I8b9TfQPvR+ jXzM5LC0EJJ+sZ/UsaUYyD9VEIRQCHxRXDzhmxTK3aYvRh10tLYtKQs0gfrCJhtJjuhD ItQubCiKgKEjYGFjaeLfnKGI52UW9nMnHVtW77NTT0MPYUnqI7GDePo+1pOB86cbFDKq KSXQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=vTJF2IrX; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id d5si443719edo.267.2021.12.17.05.58.34; Fri, 17 Dec 2021 05:58:34 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=vTJF2IrX; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CC3CB68AE9A; Fri, 17 Dec 2021 15:58:30 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out203-205-251-80.mail.qq.com (out203-205-251-80.mail.qq.com [203.205.251.80]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id ACE7E68AE56 for ; Fri, 17 Dec 2021 15:58:23 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1639749498; bh=igCvWFZX9FJ2jgeMkbi3U7IKxivFR1CMQGqAqIL7LH4=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=vTJF2IrXiSRKis1GHH8/aI/eKMMTePSLjFM0GywBCKF8IvKwy+63ZMekJFfQGBgFH 4Ic23sRh0PKob+zCx+CXgGnSkO/lSUXKeevJJ++a++c5ttxgQQ8Bkw16s4Wxw0VWxY EVVB1NcBn7VnTMXZ1EcJ4tzMeK81QZ7YZ3sfJoWE= Received: from ZHILIZHAO-MB2.tencent.com ([113.108.77.58]) by newxmesmtplogicsvrszc8.qq.com (NewEsmtp) with SMTP id E919E464; Fri, 17 Dec 2021 21:58:17 +0800 X-QQ-mid: xmsmtpt1639749497th6g3adkx Message-ID: X-QQ-XMAILINFO: NzOHSugmTg7XAyR6qh1VtOFKqUssAlXDb0V530BEMe9Bz9Ee+Zt+8hn0u9YFT9 +UyN8b3/AY1hXrBWCO8Jnl6cjN/RRqZVlcxIBZGR1IY3pGeENa1d0b7vKTaiufsVzd4Ba4xniAvl 9c9XU4spXX5Nlcpdmp0GMYyoB8muOA/+Hk0kui2fbb1p/Bf5RbAhrwGRoFczEeamX3xo+f7cWzeH hkU0/eQSaY548+pm7CHn0DSm9oW9q/ZO4D5mcUh8i1OZDK4eJMyA/ahJMFmmGC9NC1FYItYUcrFI da2quM8FH2bz8tduzctb6+uMcwlD/9fCSWqggwXwh4hdfbom18MknGkcXowMd0VGmh8+eoBtomVv acJkcAtL7QCbdvdk/FOmU9cpJS+DeZfbWr4lRvMr3dL5Y/OLr0mCnx5qft4+8TRc91uVVGi6MVN/ 7Z96dRiXdJaAEb3JefqVr2JGRQDa5MsNUPwAnM3buD9Wsk7N6ckcFLDp8FpZbCwlAWFQIbwF0tTi 389XCGjQCUbUkL+yM0ZloYiFaVIHuPv9zCdW43xxVDCXKEj3ftJfq7lM942uK03E6JW0XXoKtfyb rRkop1//BiWYm7JTfikaoaDRn+UMfvVpOpJmCRV5ea2Mr94O1wloZmtu8PhHwMwjYXinSh+WiiJY KTzg8jKl4olk1vEbNMvDGFqcqna6/bL4KWOJF6yYtvZl/CRYqla+ubgOV8WwvUPekazcyJZoKX/t IfqYGZJjs/ym4kv0+nzNZHqISX3/UxGZ9SY4EXSgyBXwYpDN+FotKzenM/waPatYbuFFuy/Ykzx9 cXtPzi6aTZfnpyl0ZyJpSM/38nBtisG3yLNP6DFJ3yKltW0WQTWM1ojFV6I8r2pAJbIrWhQ1z/mQ == From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Fri, 17 Dec 2021 21:58:21 +0800 X-OQ-MSGID: <20211217135821.52250-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <9eb61544-deb4-439c-9661-c4b8b88f641f@martin.st> References: <9eb61544-deb4-439c-9661-c4b8b88f641f@martin.st> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3] avformat/movenc: fix duration in mdhd box X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Zhao Zhili Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: idxN0vqkT2jZ mvhd and tkhd present the post-editlist duration, while mdhd should have the pre-editlist duration. Regression since c2424b1f3. --- 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