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 1A2E3422AE for ; Sun, 16 Jan 2022 23:06:20 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id D9B8068AF75; Mon, 17 Jan 2022 01:05:12 +0200 (EET) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-oln040092073024.outbound.protection.outlook.com [40.92.73.24]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C541E68AF40 for ; Mon, 17 Jan 2022 01:05:08 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GFLc9W6yxnxzur8+GMWjGosZ6SdJ7v/8n+xMhD5tAwPVAx9zArtQACdkztYwZ4kuuSCTZZjew4+sjYbnr91ryTJuCAsCWlyBkaI1uFpLYe1h880Z/plkPp/b2l/x+uCZl16Ip0xpWj37SomELoMnqb0mZz212o5z18bFzqyclG5cBZcLdn1JEg1MYuQ0DypyYmCfWql5dOya9DaYxIPMzhDz2fc6caKqlkkka8gEW98p4IuqS8qOF9jzu5lSKKyYOEhmYn2mHOT+u4bq02ySi+KHEZE62xiIZtA0gcZR+ocJXyrHTXbPHrAj+7Ps5csByeQ4N5cNVe10OePIKX0Hlw== 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=Yt1Bfv+TswrrE8piShsAMdCctR2iyQqW4SkMOc0LXok=; b=leijkFt18BGbmhNjm01rSOOy2wA9/QSf51QGJTahEuRpT9xwpPuEdVqEPlBWG1Y/rb8UQQ7n8F4y74Nlrl2QthS1MHUbR6JZJ5C9v6i8qoLEOa8hHkd3rXdS7lWmj2R7ZZF8VfyeDiJhpx2QJFD2UmRoX0ivXlGQfdTGSwQg906bXhYMB2R6QyoxynqT6I51C1zaxkx2gQY7AewdSs/T55b7kPnxvVPJX1JMnsKmWof5x+iRu0iJnwYRivWC2GLns2uDV6ECW1E2z3wU8J/GB/B/YUdsULF9Aravh2q8Z/QEw/NnHMkej7uQkGe+dph6jYIAS1uvk1+m1dvAJaF0JA== 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=Yt1Bfv+TswrrE8piShsAMdCctR2iyQqW4SkMOc0LXok=; b=bzk3J+3x8omOJdNWBqfvAaqKyzm30b7xpbl8pnxwwwy5kdvRYryP+CShV+gkFFJMW+7q731gGfEhjwaq9yhtMaeIK2JqUYBOxLwnWE3TGi+QqOHroU1XvepM4xMIsPWo4Bqs1n/1xEXjVtYrEYGZSL4LLG7ymqXKifKacbeFabXgaUAApVY0z83jLeM2TDA6dmQGTbuSFBbnU/DOhFQlbeLqLk0O4xLjvMqnkicN0ChAmFCuMsCEh8JBfD6DJo5LPtYaNXl2PXX5SkScFdI762+mrWnvrN9RmPQgfynVXRJZGwSzN/fmt+pd3nReX0JgqD295EklWTZ6y7JV/Zr6cA== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AS8PR03MB7704.eurprd03.prod.outlook.com (2603:10a6:20b:403::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4888.10; Sun, 16 Jan 2022 23:05:07 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::19fc:be9f:2c9c:53f5]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::19fc:be9f:2c9c:53f5%9]) with mapi id 15.20.4888.013; Sun, 16 Jan 2022 23:05:07 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 17 Jan 2022 00:03:54 +0100 Message-ID: X-Mailer: git-send-email 2.32.0 In-Reply-To: References: X-TMN: [4X8lGRrnaXiWUY4IQvnuF8G/YQCqfCcT] X-ClientProxiedBy: AM0PR10CA0070.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:208:15::23) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20220116230405.194506-13-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 632e477a-8c47-45b5-bd19-08d9d944a372 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiQ2WpFcKeHQajRkhOqduPns9LgUjRDeAFdPzY/9HRUYDf1bKSecXcB699IXjeJEI+yzpZNXlONju9JBTjkStdkMAeQhtqZM59uA/sO7qnBdbtjhK5nnWAp06hHOqlSJlpSnSl5EiIZbnynP9Xazc4LSLFVGIr33jXnb2FQZsArFwf11IUkkZ7T2H16XqNIP8WmZlUSPbW38iQeqfok/HTeMHgADoRPU7s+DuBZ1uLIpV672CkSF2uuFuzABtbVMvPODS+Vs9QUX0P4Uw7haoeQCF0UpyQ4tmOEl1kMOl10L27ph0kNjERX24JeipNBMhwmXXHdOPG/1aXuiKLNBwOuS2aWKT7BTM4UyR1RvDf23rstskgS3B0/EswhCd6BjWq4Qcrq4mLBJlHw0qJJKQo/dcDeB7r4QwgOgv8jZ5mOfryJXQVDqrkrhRzfcU7AnakwyW1L9D5xVH8t79bCGuF9A5/TaASI243Kv38J2dsrzm0MvdNJO8r8G1OQ5Cwetf8h6Gve7q1WCVfS9qjvfVGGug45oAF7NhrNWQC6EobyU15F6WRS1oPJowLsHjn4FOO9AbzEGoy0Gi6oHM2mtzq675K0xAFgFeN4sPNKOvaDaowoqroN5BWvNwm4D6+bNRIHLYhZXsw+4L22cBFrhYjft/K0BkWV1yolxJyaZvh6srWQxSYuoGpCk0v6yhsWXiKi++PbNGu5PxOu2micEnxNLIb2Hp2REr49xee83Xh+GwJUJLavTdgbYA/vMntmsnJs= X-MS-TrafficTypeDiagnostic: AS8PR03MB7704:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6JJHptl+u/Hq7KJe7Zm2NrZ8b3VwKT9CKvNIVOLeTdHoxXLEEBPn8XF34UaOHIx9QCggbuBxEy3WIgVf7pGsUupmExAqesfBS0TDGtSVtcFpqe/pmM8vziukkrEfBqoLWZoQ6nJLUKOalk97WzaFO76sNlt9QPcBmz7kTR/uosNKShMKNzcgMK20l/KGx74ppCs5St4yhdo+0ljWP0WY2sltQdAJXe5JP5eanTugZCLOk1HQt3dnycePtkvrQjU5RAkdKnJ/VQOl3R503ICVF9TsAuubdxmqviMWf+b8Cef7yCCp3ADREcDK6zYKsNjpTAHRQ1w7q+6sdp+wyNDBXN/puXA8b+/EymiaQ/ybG0LQj7tt8OxG9nys82lMaWcSLPPSPar2wL7qW/V7Xse26skKwKj2Jewq6YHE1yvEtm45QkfYvwsm01mxaSg7QiSBD8DapfC/YlLqYyWL5AQKCsgmKuAZXxTPLVlVEeHqPz8lus/XVc/9o1dwGrSvCPp3A1xZsPiLhBF+0Qrblm/RZcjqZK0mexA6Ptf8tYmKFUUYz3KcWTIqpKfc/4gSEfmLWVkZTSyrqg+6i6rZVnrU8Q== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?GTy7ngrNCpX8EbBXtmyRhIBBDWXAox51+OTl49fdHBNOvsbu4QB4jqaLL0ft?= =?us-ascii?Q?UrW5s1IDwyBAZDIH3j4xLgCCYxNZcu61sal3uFFQMdcf8MvhNeHn7qxwy0aN?= =?us-ascii?Q?3QOwZRL1nnh/QgZyNOF8y7LDAA5Xo649sl8lPwe6p39nHrsvIapKYjSR8e8d?= =?us-ascii?Q?pG9jy8Jm180Mw+Z3yzTg+N8Em4NLY6htLh8Du2XUskX7CpFHqc5jRO5U8+Gi?= =?us-ascii?Q?puBuiOwlOAvZwvBGU7KPKpIxrN8zW8mmSgt6p2P0FHEwi1x4yL+N8sPCUvnc?= =?us-ascii?Q?G7vGYtz/7QCh48ALuAdWNrJQJRiF064L0v9erpbxQriDzbtTNd6Cfaw7LUqA?= =?us-ascii?Q?RccMeomo/jJnkqP8HW0ueVwRxDUtTsU2L994Vld1PWS0jdakwITyoEBeig9a?= =?us-ascii?Q?hilx0JZMOB9kWTm5MuXYCy6ZDpJTjKTuvOh6CXZurieXJYT7Ky6tErRBgGOl?= =?us-ascii?Q?QjVqxVBJkrjfTw7anmqe19lRxwW5FP639B/ld5jIKVbOpBuJmZr308o5D9cP?= =?us-ascii?Q?n9VLdo/HKrn0ZnkUCjqJSRrj0YCxO0M6anc+ZkYz46+tlkHlEXbrs2B4xca3?= =?us-ascii?Q?0w4Ue2iuRckeK+t1cqVvuHfaHAEp5ZpSy2o1gO2n08mpXiMl6q6E4hxMX/q7?= =?us-ascii?Q?7Zrm2hmnALdavvyJBPF0KEKlOqWDqPD8Z04Of4WfActdKKsM/XTOuuGv38SO?= =?us-ascii?Q?lQ8CEg9rFclx0kz5T4pJdFuZrJ3HRWBdNmNYqFJ/mX8RNxJBOi04IoRgVV0s?= =?us-ascii?Q?07E22jtSLswiBOyKXe5V2lHH5y07Rveb9CnaGhYQ0BvVbVR/FFDyeJhgZ1Eh?= =?us-ascii?Q?lnnVrzzE1agulAU4/5QcP70osNO6E/p+xYdE2tPgPnx4265JDi79qLr5H39P?= =?us-ascii?Q?n6c6JJC1GoLmCNZv6jrEE6bKs7UARxt3+9/zmQRAUroNjyQ/s0LzVB8yG5S0?= =?us-ascii?Q?1ExUUei/FQkh8YF9Qk2KKQ=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 632e477a-8c47-45b5-bd19-08d9d944a372 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jan 2022 23:05:07.4733 (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: AS8PR03MB7704 Subject: [FFmpeg-devel] [PATCH 14/25] avformat/matroskaenc: Redo reformatting AV1 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: Andreas Rheinhardt 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: This avoids allocations+copies in all cases, not only those in which the desired OBUs are contiguous in the input buffer. Signed-off-by: Andreas Rheinhardt --- ff_av1_filter_obus_buf() now has only one user left: movenc.c Maybe movenc.c should be modified accordingly to remove it? libavformat/matroskaenc.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index 08d2d338a6..d275d6cd6c 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -2389,6 +2389,16 @@ static int mkv_reformat_wavpack(MatroskaMuxContext *mkv, AVIOContext *pb, } #endif +static int mkv_reformat_av1(MatroskaMuxContext *mkv, AVIOContext *pb, + const AVPacket *pkt, int *size) +{ + int ret = ff_av1_filter_obus(pb, pkt->data, pkt->size); + if (ret < 0) + return ret; + *size = ret; + return 0; +} + static int mkv_write_block(AVFormatContext *s, AVIOContext *pb, uint32_t blockid, const AVPacket *pkt, int keyframe) { @@ -2426,9 +2436,7 @@ static int mkv_write_block(AVFormatContext *s, AVIOContext *pb, err = ff_hevc_annexb2mp4_buf(pkt->data, &data, &size, 0, NULL); } else #endif - if (par->codec_id == AV_CODEC_ID_AV1) { - err = ff_av1_filter_obus_buf(pkt->data, &data, &size, &offset); - } else if (track->reformat) { + if (track->reformat) { err = track->reformat(mkv, NULL, pkt, &size); } else data = pkt->data; @@ -3106,6 +3114,9 @@ static int mkv_init(struct AVFormatContext *s) track->reformat = mkv_reformat_wavpack; break; #endif + case AV_CODEC_ID_AV1: + track->reformat = mkv_reformat_av1; + break; } if (s->flags & AVFMT_FLAG_BITEXACT) { -- 2.32.0 _______________________________________________ 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".