From patchwork Fri Dec 17 13:34:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 32682 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp1563555iog; Fri, 17 Dec 2021 05:34:52 -0800 (PST) X-Google-Smtp-Source: ABdhPJzXllRm6wmfkoLIEPte22P90VSzR2augfEBiYmxsjwhWy5SUojqk4OG0Mu83NZUvVDrSC6g X-Received: by 2002:a50:9b05:: with SMTP id o5mr3020710edi.66.1639748092135; Fri, 17 Dec 2021 05:34:52 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1639748092; cv=none; d=google.com; s=arc-20160816; b=VlfFR52Obsq9citQ9FIz7RuDWt/tS/65hOI7+v0OREsUD8fsKTnHFwr7sMUrO+8ALc hxh7TZP4Qw3xCSQogllwK+yY9oSgqW3UHa+EYhNIRQ8Cq39WPnG4FYUZDzq0we72IzuB xt0UOFXBkybM2SZduxSihy1DwYn80Hm++pRwwOOUj7wSqG8jVnUgt3zRKeEk72gl0vMF KaRiJ32KE+AUk2obY7aeiqgtc3cG+w+MP7FSUv0gtBq/d2TkwU+DAJGI6luIsEHetpSy qNsa986ri90JeE7QCRYkTp+y7KRSc3K0hgv719AlBkMtfDtqnP+nC3vah7dLn9F5Boly 367A== 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:date:to:from:message-id :dkim-signature:delivered-to; bh=JBqh+xCy/7BJ4R3umaDbNaxDYBEUd34+cyKTdopyqe8=; b=oU2VEZSX9gpb5G/JuLCJWIocWOGwWPMoKzqakKc0Mtsy3nB913ESXSPiJ9enx1diR7 TjOTzz+/Qp40p3IS8bZrIOp2rha52K9LDib5UoSYtbCZsy13MKXmVGFQjwLJ6VLJjAZI geplzLtKfIEAcbk6snE5o5s7Je0jXV1HeWfT4NFPbiL9H0zzcOb7T/mnmQvBFMA7rZ4D +sGBXuCNUamZYZjsrf5DXHzjMZp6XleUBY4JlNfl9TBGM4i6xGlQDQp6mTbr+61AV4HK yLKV2YBxuzAWHBDRKhqJujXLbmo0XgttWJiKVPpT31QhCqymWzwNs8mFETwamZcovs+J ghLQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=qmiqm0KJ; 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 hp2si7057371ejc.67.2021.12.17.05.34.28; Fri, 17 Dec 2021 05:34:52 -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=qmiqm0KJ; 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 829EA68AE7E; Fri, 17 Dec 2021 15:34:23 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out203-205-221-242.mail.qq.com (out203-205-221-242.mail.qq.com [203.205.221.242]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DFD8E680C05 for ; Fri, 17 Dec 2021 15:34:14 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1639748047; bh=E/lfypiPCyhpNO5P+DPpcjIxNO8YdQtC7PByPPtlHdU=; h=From:To:Cc:Subject:Date; b=qmiqm0KJ2WEeCDNAwzudugoI+syfPx+vuzEmismiMDBeK3vmtsk+e6r3+Ls5t3twh pfwKCHksMAChofiiNHjxEaeAwitSPNfKvcMZBQfBnTgGm3AfPbUtkthGsw0wovGiIc Wk8facg9baAWzB07UwTAiO/esIDkaUpR9C2oq6lY= Received: from ZHILIZHAO-MB2.tencent.com ([113.108.77.58]) by newxmesmtplogicsvrszb7.qq.com (NewEsmtp) with SMTP id 8869322A; Fri, 17 Dec 2021 21:34:06 +0800 X-QQ-mid: xmsmtpt1639748046tfolxs2nj Message-ID: X-QQ-XMAILINFO: MX+1SEN3H+wAOKqLoJljE3l31vlwqJ8CZnNpiY4HppyWA4WN5huVgn6bJDtJYn Lk0cJvY35awrTJayBulUFUiN111kHUEeV4MkWHgoXPK083E1NSzTq3vJYmKTino0O292Jo1yFzb4 OoZUP/8D+2tQ8ww7UVFePgot74rhAu3sPEL/uX0yKh3C4ubKq1yCYx3ILgDkIiDkkTrjdc+HeVxU Yy7NPOFECGexc/AZckGqDmNn++F+tVKsKwWH1z1gYIH/qnFdDlH/rMh1FUHrgCYKFNOnPj1D5xI7 u3lzZqLzjwqW5s8NawEK9Tq76ti5FQxfLuSFsYGv7Ui31Qi+CVfwWHZ3w4BjFwGS2qpt1r3Cmu3d UDdY1E35OgGygdf3qZe/M9/Gc5CuK1q8ELp5ZYmEqGc58Zc06mc9GIqpqIor8RUFn/Esr0sQv3ic t6bkTNVvBY3ZM+HJa0y6rmSPiosCgu44vrp2VfsKlYpd3Ru5dA2gPRF9jS4v2+2ln3GzqJn1yWxz 2ZRNBA32Ihdr0F0G21Xc3BmYeCyw4v0qJ21tBRmKOzR82nqGLa6oBpppRkCDxd/eqX8Hw7EvJdum q09c257OpE992SHJIbQU4CrT8N4w3KUNo2kiO6xrV3OuVh6rc0RD64WhibJ9Ak1jsJ5xifis7uwC iHYUouJVRiGEQJYKjJk2s2T7KpqoEHQxn9/T+FT+E4s1PircrOHDT1SAbJdccahJoth7OUD+pvAO Zdi3tnBpKBB6JHYfvBNezKfh1XbYmmaLDog/RXAKBRm2SM9O9kGJ26U5wL+19K7CiJDCP4GNNAdn +vp72ft4kb0YhPS4n76TdsjsDJ2jzRN/xSwpu1trLFUmf5YNQIxBOeEU7IjbALAc9KkoWYPh9k9A == From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Fri, 17 Dec 2021 21:34:09 +0800 X-OQ-MSGID: <20211217133409.31513-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.31.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] 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: kFUUiTySzhZI It's the duration of this media, should not take account of editlist. --- libavformat/movenc.c | 9 +++++++-- tests/ref/fate/movenc | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 0f912dd012..643beac6f2 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -2970,8 +2970,13 @@ 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); - int version = duration < INT32_MAX ? 0 : 1; + int64_t start, end; + int64_t duration; + int version; + + get_pts_range(mov, track, &start, &end); + duration = end - start; + version = duration < INT32_MAX ? 0 : 1; if (track->mode == MODE_ISM) version = 1; 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