From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 4757140EA2 for ; Fri, 11 Mar 2022 16:16:20 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 11C2568B0D3; Fri, 11 Mar 2022 18:16:18 +0200 (EET) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-oln040092073098.outbound.protection.outlook.com [40.92.73.98]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BA038680264 for ; Fri, 11 Mar 2022 18:16:11 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ikvTueyN6F7Lp/EeoNvI+zzwYhdhvKktBAB/36LdjWNQxzvCEBY0iOZ6U1fza7hIk452NMSf1wcIkSj2eFUpXkf7HqSQgH+q+DPdwtp9b+m/sxKjr79evc5TIREkXhcD1fxIfW/N1jAIGEoI0/RjZ2FD0u/Fz7fw5WrMWeefo053bQzFuUedcc3ZwNCPdhodGtMC59enlPx2UZDf0QmlqJ2U88696ipwOCIgnKRz+3jAu+SZLF5jXwE8B9DoitAjxoyNnFiGU99+6HVOcRvBE0SdSRhGuULZyMjXnrsSMU/q4eOqWzLOkaoWEnZXDAF9yy8sTL/r+C5zjM9MVAI1xw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=RToPTwgUbVqqk8ZFHwi05UT8WZncMLhTcNxx9vQcgQ0=; b=HrlXj/yUVKXJGzFditvQhkjnoplxXMdRJMKe9FoclAbD1dN2WlUP9mUSoUX44O+GZb9I1CGUlHFmuDJGwrmt0cwGHjf91VkZpMI7tSxsk/T4sHRQnbDpgA4NEU1/tvn4W438F2+DoDXDMGIumlnCkkEPmvri8Fltyw9Q41yMGrieOYoZ7ElkWFzcZqtO+c1PwsCMZJYf5GA7TcwdJbcbt55G8BGN0O0hIEJE44+tpE+tl/f/UVgmcpjDEuwy2nWRT9u5CUc2dCmv63OoWY1msywxYCeOgRr7y3KQH168bhiy60/qKqw4BQAzG5OftXXjmG2TA+O6m/MRxGz0gOf9IQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RToPTwgUbVqqk8ZFHwi05UT8WZncMLhTcNxx9vQcgQ0=; b=mmPQb03/w4tN514r2Evl3wBjQ9n2LIfxVsaXXYVgNyI8QdPklPnj5zbKixYflhfpUMx+AFsJ94wpe/w4lFDqrFn497vzHznigGMDi/nSywC1ervoP9RwiuyaCyyroizr2AEep7KricKGE+kRhSdo7BhGYF25FCwGN6o8eQVx/98dFyVmWjQGRiQJDl2PGn/2vIv9+LNNvcT6IDv741YPTZ7Asiu7EormRZ487/RPb9H3mnlTmNxGQIvVpwL0DjOukAOlL/BkmKpcMqP1aa6zM+WWwbZUQPbXgqzn/lgyNYVA7dVnzQoAHWHRjyJV7r0UpFIkbMhamdocIhomNof2rw== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (10.141.218.86) by DB6PR0302MB2789.eurprd03.prod.outlook.com (10.171.76.12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5061.22; Fri, 11 Mar 2022 16:16:10 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::bc6c:af66:7adb:7a3d]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::bc6c:af66:7adb:7a3d%7]) with mapi id 15.20.5061.022; Fri, 11 Mar 2022 16:16:10 +0000 Message-ID: Date: Fri, 11 Mar 2022 17:16:09 +0100 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: <1646229512-12103-1-git-send-email-lance.lmwang@gmail.com> <20220311135854.GA24038@gmail.com> <20220311155851.GA9443@gmail.com> From: Andreas Rheinhardt In-Reply-To: <20220311155851.GA9443@gmail.com> X-TMN: [dgensGa/J+6hjKr8YQe40kN0rlVTwhrE] X-ClientProxiedBy: AM5PR0502CA0002.eurprd05.prod.outlook.com (2603:10a6:203:91::12) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9ae9c96a-d8fe-4e66-3e95-08da037a746a X-MS-TrafficTypeDiagnostic: DB6PR0302MB2789:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: kOGKmKbjTKmO+XxjKIOsHzuBZLEXqAb6j8hUO2tWUZKMo8rBd7NcTK7d4lQUxjppziAhp7S/pd4okykGTKwWb7zIo0lAP+N8ck86ZmJEFfy+K/JSmjbZNReu2DlkZ4CduXCRUCYIpgSSj2QNxbON0iwBKxyGbmCNeGm58Vf4rkxAU5HSBUi3cvhTuFjIUglRNBaUDMvFM+bVfSLCm95/TQRZXhzn05BdFxTv7T8KqOF21SjOLWPgDg1q7NBHBCEKAQWuE0ElFRb/fk1/Tj82E0IbErPhOXjIzmJoFTzgeQLPAqRB8EufA7NGDQ7LRCjKVn0jYkE0BkjntOn86FALTIMVsAPKtfMXVkxYZQfwxG8JCdvYy0T805Lz56jBp2+14KMY+pSoaGa/ieNxBkSJG2e3rwYNTQuUFkX1au3NgjvhYdEBzNsdwNCKkhV37bcxlRT1rbOWSCfoVMhuWFQPEWdfvqKP7ZEiJc+GsFyTPLTWRaOpfzBQ5wx8GWAwX1jH5qEmpStRNsSN0o19GxZwlNe6/Alk/1aBPgUwcWhvEX7u749Ab3rbIzjISlMjyIHvsycIcySM3h1oONd/B6Y84A== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?bWJlbXZqREdTVmw1engrL2lVMzJZY0pxd1lJWU4yZ0EwL2VCWWw2WEdpWWFZ?= =?utf-8?B?MHBLbTZsVkMxVjNMTllKQVh4N2txTzdCRXZ6S3lUZFQ2STIxN0lBZEpWQWJE?= =?utf-8?B?dCtjSVZoNHREblR1Vmhzanc2eUlNU1NldzFSZWxtMVQ0VzZKTUlnODBZOVNO?= =?utf-8?B?SFRxZWw4YTlHcnVqTVhvRkRuUnFOSm1BMEx0TXd0bDNTVmF2K3hlRTRBVzNz?= =?utf-8?B?VHRTKzliVFl1L293RDJET04yNWhvcWFsRS9PSkxaVCtNRHZxY2s3b3JOcEk0?= =?utf-8?B?c2ZEMkppTnhFNVk3clhVTXRrbDcyeW9yc21nSWxyYUU5N05rbGNFZkFaak1S?= =?utf-8?B?bVBuZ0hmZGxEdlpZWERjSC9xMWh6c0IrWDFiTTJjcWxuYWwydE9uaXJNMTQv?= =?utf-8?B?WE9nT0F6cFZZZklhQWR3VmJDOFFzZWpBWXd6ckkxM0ZNaHhwYTQ1VG9zVkNH?= =?utf-8?B?amZUdU5MMytHS2RKRTJZRjYvRXJLUWgydExhNWFLN2NPUm4vWGJmTTFLUGhZ?= =?utf-8?B?KzZ4c3ZRdTdwL1IrbEdVVytaV2NKb3pKakNhY2RGUVMzUmc2Uk1NK3NjUUZ3?= =?utf-8?B?OFJlN3JRa1pCa0l6M0pQMDYwNGRHWmFMaGxZZS9jT1ZwK2p0MjBtbGREN1Fx?= =?utf-8?B?bmRTWExJQXg4dC8zd0RYOTVBRlh0UjdoUDlDekFjK3gwQ0EvL0kzL0plaEdS?= =?utf-8?B?REtWV0Ixc2hteHoreHhzclFEemlYV0dKTEd5T2lDamRhZUVPOTA1U2ZsR28x?= =?utf-8?B?cGRUMnRwa2xURmlEWTVvVlcvMml1aDU5MEFNUFdTeDFaQlQ2YWYxcThNRk5w?= =?utf-8?B?ZFlkUEpNUG5YMjBOLzVtNXBoYzkwWElyRDRXSnp5RjFhaEV1Y1d1Z3RUT2Zp?= =?utf-8?B?UkV3RS9RL3hON1QxNEsvM1RYZ1VoSTNmMkJjdUZXMXRKdXNsaU1FOWpqalha?= =?utf-8?B?dElxdGRqM3FnWnJKbGJVdkVReVkrK2dreEwwUFJ3RWNMTVZ6RzVLOCs2RzBr?= =?utf-8?B?b3hBL1A0cXRoNVNheHYxcXArV3B6cjZybGlvTEZBcUFReXpxTlpwcUNhczNz?= =?utf-8?B?a3ArcWQrcElWR3BOK2FYQ1UxWkVOK2FuTFpreGlEQlpMMEhsU29YWmhkOWsx?= =?utf-8?B?Qk4vaXdSTWJLSTRLMEFoc05kTkNsME95V21ONEJweU9ONWhSeDFkTTI1ZStt?= =?utf-8?B?WTloUGRnMitUb3UvQWJvWFYvNVg3ekV2VUxFTXFIeVlyUU9LbUd2bTRoSzVY?= =?utf-8?B?cEFUUzhaRFVqRm1QeGJ5dG15QXQ4UmZRZ1RsQUFPZ25ORE5peUZtdDlYd2tm?= =?utf-8?B?Q21BRUdPRTQwUjdzYTk3QzJJSVUrMkZsbS9WTkI0WE50VUIxTG5waVhDdytK?= =?utf-8?B?M2x3VzRVQWIxUGR1SlVnejRseDY3dmZLalVoYmo0aVhUM1JoZEJUbUFMcWNt?= =?utf-8?B?dE1hekQ4VkJjU0RiZmc1Y0NDci91ck1SZjB1VkR6NFdvKzdxMmIrS0l1azlT?= =?utf-8?B?Qjd1SW5PZFpQRkp4UkxMNHlsU1docTREVDRMSjIyV3ZRTGZqdnJwUm1mNDVr?= =?utf-8?Q?du9MzB1/ibJr490VGEjPElpViHtfoTOp8N9cu/vDW+p/RV?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9ae9c96a-d8fe-4e66-3e95-08da037a746a X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Mar 2022 16:16:10.3015 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0302MB2789 Subject: Re: [FFmpeg-devel] [PATCH 1/2] avformat/movenc: initialize pts/dts/duration of timecode packet 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: lance.lmwang@gmail.com: > On Fri, Mar 11, 2022 at 03:04:32PM +0100, Andreas Rheinhardt wrote: >> lance.lmwang@gmail.com: >>> On Wed, Mar 02, 2022 at 09:58:31PM +0800, lance.lmwang@gmail.com wrote: >>>> From: Limin Wang >>>> >>>> Fix below error message when timecode packet is written. >>>> "Application provided duration: -9223372036854775808 / timestamp: -9223372036854775808 is out of range for mov/mp4 format" >>>> >>>> try to reproduce by: >>>> ffmpeg -y -f lavfi -i color -metadata "timecode=00:00:00:00" -t 1 test.mov >>>> >>>> Note although error message is printed, the timecode packet will be written anyway. So >>>> the patch 2/2 will try to change the log level to warning. >>>> >>>> The first two test case of fate-lavf-ismv have timecode setting, so the crc of ref data is different. >>>> Fixes ticket #9488 >>>> >>>> Signed-off-by: Limin Wang >>>> --- >>>> libavformat/movenc.c | 2 ++ >>>> tests/ref/lavf/ismv | 4 ++-- >>>> 2 files changed, 4 insertions(+), 2 deletions(-) >>>> >>>> diff --git a/libavformat/movenc.c b/libavformat/movenc.c >>>> index 4c86891..74b94cd 100644 >>>> --- a/libavformat/movenc.c >>>> +++ b/libavformat/movenc.c >>>> @@ -6383,6 +6383,8 @@ static int mov_create_timecode_track(AVFormatContext *s, int index, int src_inde >>>> pkt->data = data; >>>> pkt->stream_index = index; >>>> pkt->flags = AV_PKT_FLAG_KEY; >>>> + pkt->pts = pkt->dts = av_rescale_q(tc.start, av_inv_q(rate), (AVRational){1,mov->movie_timescale}); >>>> + pkt->duration = av_rescale_q(1, av_inv_q(rate), (AVRational){1,mov->movie_timescale}); >>>> pkt->size = 4; >>>> AV_WB32(pkt->data, tc.start); >>>> ret = ff_mov_write_packet(s, pkt); >>>> diff --git a/tests/ref/lavf/ismv b/tests/ref/lavf/ismv >>>> index ac7f72b..723b432 100644 >>>> --- a/tests/ref/lavf/ismv >>>> +++ b/tests/ref/lavf/ismv >>>> @@ -1,7 +1,7 @@ >>>> -48fb8d7a5d19bd60f3a49ccf4b7d6593 *tests/data/lavf/lavf.ismv >>>> +7a24b73c096ec0f13f0f7a2d9101c4c1 *tests/data/lavf/lavf.ismv >>>> 313169 tests/data/lavf/lavf.ismv >>>> tests/data/lavf/lavf.ismv CRC=0x9d9a638a >>>> -d19cd8e310a2e94fe0a0d11c5dc29217 *tests/data/lavf/lavf.ismv >>>> +79646383fd099d45ad0d0c2791c601dd *tests/data/lavf/lavf.ismv >>>> 322075 tests/data/lavf/lavf.ismv >>>> tests/data/lavf/lavf.ismv CRC=0xe8130120 >>>> 3b6023766845b51b075aed474c00f73c *tests/data/lavf/lavf.ismv >>>> -- >>>> 1.8.3.1 >>>> >>> >>> will apply the patch set tomorrow unless there are any objections. >>> >> >> You have not really answered whether the current files or the new files >> are spec-incompliant; you have just reported that one byte is different. > > Sorry, I think I have said both current and new file is spec-compliant in the last > email. > You stated that you think that both files are valid, but you also said that you don't even know what this byte that is different actually means. > By Quicktime file format specs: > Section Timecode Sample Description, all tmcd field isn't used pts/dts. > > As for where is the different for one byte, it's caused by pkt->duration. The > old is 0(uninitialized), after the patch it's 33(1 frame duration). > The text about Timecode Sample Description reads as follows: "Frame duration: A 32-bit integer that indicates how long each frame lasts in real time." This implies that only one of the two files can be spec-compliant. I am not a mov/ISOBMFF expert, but it seems to me that the current way of doing things is wrong. But I wonder about whether your patch is correct for vfr content. Doesn't the property of being vfr need to be reflected in the timecodes somehow (with different durations for different packets)? - Andreas _______________________________________________ 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".