From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id 1902E4D050 for ; Fri, 16 May 2025 11:05:19 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 36A2F687D10; Fri, 16 May 2025 14:05:15 +0300 (EEST) Received: from server.hege.cc (server.hege.cc [195.201.47.152]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 2B85D68C985 for ; Fri, 16 May 2025 14:05:08 +0300 (EEST) Received: from [0.0.0.0] (dynamic-2a02-3100-1bf3-f100-ba27-ebff-fe76-29ff.310.pool.telefonica.de [IPv6:2a02:3100:1bf3:f100:ba27:ebff:fe76:29ff]) by server.hege.cc (Postfix) with ESMTPSA id DBB854DBE8B for ; Fri, 16 May 2025 13:05:05 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hege.cc; s=mail; t=1747393507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=ydGo8UXq2IY1dSM15mCm5i+0dSvJEPD9pLNUnKSfuQo=; b=ARBxBs9g2lSnrHHj9wkXkQOmyb5MWwEGHH9+0GrM91mzYarYKel8TjwLcogAM4ND0Ewu5N t8Z27nhguWQcwIuxenrkaXjVolAwKwGOBFg90wKvWtflFqhiTCUfT/J2KrtN9xr/nWVhQd jfVYHgGpWRRaxJgTaSxEZn5fBLzbQEthKflp0xXpEnZUcWDj2tE5i+IvPOu1D2Gy1vrd/Y CxLhvVrBwSYjut/Tbjeyzr8JvWhr2/l9VFwfUpjFplC22nTdRxEqqtQcflDrLi1IW2X4I9 eIb7q0iHSnrB/OIgXjuYThuJA7XEe1rFrwE3s+dqWAxuy5fcHpOHLMvfwbWWlw== Content-Type: multipart/mixed; boundary="------------qVdh6gVCXvAzxZQLlb43ks7Y" Message-ID: <1aff505d-06f0-4773-9b25-747e3fca21a8@hege.cc> Date: Fri, 16 May 2025 13:05:01 +0200 MIME-Version: 1.0 User-Agent: Betterbird (Linux) From: Gabriel Hege Content-Language: en-US, de-DE To: ffmpeg-devel@ffmpeg.org Subject: [FFmpeg-devel] [PATCH] avformat/movenc: fix VVC encoding with leading pictures 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: This is a multi-part message in MIME format. --------------qVdh6gVCXvAzxZQLlb43ks7Y Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit This is a resubmission with a corrected commit message. The default behavior for VVenC (since v1.10.0) is to create an IDR with leading pictures for the first picture in decoding order (POC 32). This leads to FFmpeg generating an edit list with an empty entry, skipping the leading pictures. This patch fixes the calculation for the start_pts, while the DTS is negative (as produced by libvvenc). How to reproduce the issue (needs --enable-libvvenc and a recent libvvenc, e.g. v1.13): Encode VVC directly into MP4 container: ./ffmpeg -i /data/YUV/foreman_352x288_30Hz_i420_8.y4m -an -preset faster -vcodec vvc test.mp4 -> encodes 300 frames. Decode to YUV (or play back using ffplay): ./ffmpeg -i test.mp4 test.yuv -> outputs 271 frames When dumping the mp4-structure using 'MP4Box -diso test.mp4', I see the following EditListBox, which skips the first couple of frames: With the fix applied 300 frames are decoded as expected and the EditListBox looks like this: --------------qVdh6gVCXvAzxZQLlb43ks7Y Content-Type: text/x-patch; charset=UTF-8; name="0001-avformat-movenc-fix-VVC-encoding-with-leading-pictur.patch" Content-Disposition: attachment; filename*0="0001-avformat-movenc-fix-VVC-encoding-with-leading-pictur.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBkMjQxNDE3MDM4ZWY3OGMxZDJlYjZjMzhlNTE1YTUxNTMwODJhNjVmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBHYWJyaWVsIEhlZ2UgPGcrZmZtcGVnQGhlZ2UuY2M+ CkRhdGU6IFdlZCwgMTYgQXByIDIwMjUgMTM6NTE6MDYgKzAyMDAKU3ViamVjdDogW1BBVENI XSBhdmZvcm1hdC9tb3ZlbmM6IGZpeCBWVkMgZW5jb2Rpbmcgd2l0aCBsZWFkaW5nIHBpY3R1 cmVzCgpUaGUgZGVmYXVsdCBiZWhhdmlvciBmb3IgVlZlbkMgKHNpbmNlIHYxLjEwLjApIGlz IHRvIGNyZWF0ZSBhbiBJRFIgd2l0aApsZWFkaW5nIHBpY3R1cmVzIGZvciB0aGUgZmlyc3Qg cGljdHVyZSBpbiBkZWNvZGluZyBvcmRlciAoUE9DIDMyKS4gVGhpcwpsZWFkcyB0byBGRm1w ZWcgZ2VuZXJhdGluZyBhbiBlZGl0IGxpc3Qgd2l0aCBhbiBlbXB0eSBlbnRyeSwgc2tpcHBp bmcKdGhlIGxlYWRpbmcgcGljdHVyZXMuCgpUaGlzIHBhdGNoIGZpeGVzIHRoZSBjYWxjdWxh dGlvbiBmb3IgdGhlIHN0YXJ0X3B0cywgd2hpbGUgdGhlIERUUyBpcwpuZWdhdGl2ZSAoYXMg cHJvZHVjZWQgYnkgdnZlbmMpLgoKU2lnbmVkLW9mZi1ieTogR2FicmllbCBIZWdlIDxnK2Zm bXBlZ0BoZWdlLmNjPgotLS0KIGxpYmF2Zm9ybWF0L21vdmVuYy5jIHwgNCArKy0tCiAxIGZp bGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL2xpYmF2Zm9ybWF0L21vdmVuYy5jIGIvbGliYXZmb3JtYXQvbW92ZW5jLmMKaW5kZXgg NGJjOGJkMWIyYS4uMzA1ZjkyMDAyMiAxMDA2NDQKLS0tIGEvbGliYXZmb3JtYXQvbW92ZW5j LmMKKysrIGIvbGliYXZmb3JtYXQvbW92ZW5jLmMKQEAgLTM5NjYsNyArMzk2Niw3IEBAIHN0 YXRpYyBpbnQgbW92X3dyaXRlX2VkdHNfdGFnKEFWSU9Db250ZXh0ICpwYiwgTU9WTXV4Q29u dGV4dCAqbW92LAogICAgIGludCBmbGFncyA9IDA7CiAKICAgICBpZiAodHJhY2stPmVudHJ5 KSB7Ci0gICAgICAgIGlmIChzdGFydF9kdHMgIT0gdHJhY2stPmNsdXN0ZXJbMF0uZHRzIHx8 IHN0YXJ0X2N0ICE9IHRyYWNrLT5jbHVzdGVyWzBdLmN0cykgeworICAgICAgICBpZiAoc3Rh cnRfZHRzICE9IHRyYWNrLT5jbHVzdGVyWzBdLmR0cyB8fCAoc3RhcnRfY3QgIT0gdHJhY2st PmNsdXN0ZXJbMF0uY3RzICYmIHRyYWNrLT5jbHVzdGVyWzBdLmR0cyA+PSAwKSkgewogCiAg ICAgICAgICAgICBhdl9sb2cobW92LT5mYywgQVZfTE9HX0RFQlVHLAogICAgICAgICAgICAg ICAgICAgICJFRFRTIHVzaW5nIGR0czolIlBSSWQ2NCIgY3RzOiVkIGluc3RlYWQgb2YgZHRz OiUiUFJJZDY0IiBjdHM6JSJQUklkNjQiIHRpZDolZFxuIiwKQEAgLTY5MjgsNyArNjkyOCw3 IEBAIGludCBmZl9tb3Zfd3JpdGVfcGFja2V0KEFWRm9ybWF0Q29udGV4dCAqcywgQVZQYWNr ZXQgKnBrdCkKICAgICAgICAgdHJrLT5mbGFncyB8PSBNT1ZfVFJBQ0tfQ1RUUzsKICAgICB0 cmstPmNsdXN0ZXJbdHJrLT5lbnRyeV0uY3RzICAgPSBwa3QtPnB0cyAtIHBrdC0+ZHRzOwog ICAgIHRyay0+Y2x1c3Rlclt0cmstPmVudHJ5XS5mbGFncyA9IDA7Ci0gICAgaWYgKHRyay0+ c3RhcnRfY3RzID09IEFWX05PUFRTX1ZBTFVFKQorICAgIGlmICh0cmstPnN0YXJ0X2N0cyA9 PSBBVl9OT1BUU19WQUxVRSB8fCAocGt0LT5kdHMgPD0gMCAmJiB0cmstPnN0YXJ0X2N0cyA+ IHBrdC0+cHRzIC0gcGt0LT5kdHMpKQogICAgICAgICB0cmstPnN0YXJ0X2N0cyA9IHBrdC0+ cHRzIC0gcGt0LT5kdHM7CiAgICAgaWYgKHRyay0+ZW5kX3B0cyA9PSBBVl9OT1BUU19WQUxV RSkKICAgICAgICAgdHJrLT5lbmRfcHRzID0gdHJrLT5jbHVzdGVyW3Ryay0+ZW50cnldLmR0 cyArCi0tIAoyLjQzLjAKCg== --------------qVdh6gVCXvAzxZQLlb43ks7Y Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --------------qVdh6gVCXvAzxZQLlb43ks7Y--