From patchwork Thu Jun 17 02:31:27 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 28430 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a5e:c91a:0:0:0:0:0 with SMTP id z26csp199635iol; Wed, 16 Jun 2021 19:33:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwGag7aHWv+rvxNVAUf21EL/WQOmRRst7f+hIjlLKcE0FpIy0DMWBzGeHhYNAuG1qQLMkAi X-Received: by 2002:a17:906:b6c5:: with SMTP id ec5mr2613810ejb.290.1623897218826; Wed, 16 Jun 2021 19:33:38 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ia6si3144016ejc.8.2021.06.16.19.33.38; Wed, 16 Jun 2021 19:33:38 -0700 (PDT) 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=@outlook.com header.s=selector1 header.b=plOoJJHg; arc=fail (body hash mismatch); 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=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B8F1C6898E0; Thu, 17 Jun 2021 05:33:19 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-oln040092073041.outbound.protection.outlook.com [40.92.73.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4A316680207 for ; Thu, 17 Jun 2021 05:33:11 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dkzB4vl3IVuvzaisAD/G3Yh+rrTyOgDAp9XuhhnlISUyi88F0QCh5HTmwOwVohFngBufTiSKO9BRVkMo3E3netTtywfw5F4QNK6zRjek2Jw/T1OhemgNy0ekZ2sr+HFyMXrNCVyN7PweGFM9RRi70mfGD66vk6rZebTEagVlOFR6nauqO0yTh+ltwf5+Hvr1B8E4tvZ1I+mw+eAjWci/VVkL7ASsamMsnsZ46faogJRB9preUyernWtHYX03DMNxm2jivoVJb7Jzy40HvqUbhbAgrnT2hhVrGu4mktZhc82V477YLxJYTpCuCYUqFDZvJJpzr+xpKif/wuIQlBtSDA== 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-SenderADCheck; bh=gtSTYRUExC5ddhTOAk3DONIcIurctF3CjMSZRsp2QMg=; b=CG3AxxAsSI36F4URFmsA6vL+Jtu8fr1AHoHkJUJccPFwLFh76ubXJYBS0Xt54anqDLy/SW37MhU1Avxgh40c1LJZJms1iFPz+YR/dBXwaGRt/K5jT9iDLhkU5OJNHxZTzetcaEGY9zWZqTLoDK0nhCzrr4sFnaGuJuD/ECBFb4qbH4c9LY9NTExP/3eZMhQ2MFzlqiGQOP1xMF39VjUWS85mj3/lKbqnaPPcDmfc/GWrCQOi2OraRH2bw0S/mYRWg9Q7as5x79oAXL/edh816v+au/LXFZiDbzhIRQPt36+MliD42C6zRWG2/ahM7D4A2EVtKdV3Ci89FjOcDXrJsg== 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=gtSTYRUExC5ddhTOAk3DONIcIurctF3CjMSZRsp2QMg=; b=plOoJJHgzfy8uBxU//6nD6l27+PWgjdqe957lVZmlAX/GcyTm2Egps75AZSsjtMbPiIl8U0p+k2mn5ME2rnPVqiFEqKxitsdrtDWv1pKoI3fwHG/9L0/dKN5hvW9dgz2fOUAs4CtkS2ih6HHYnISLb3sKPSJvNqNhpa19Wqw8zXkBdfyn/zeZje2+QvTyfDy2VmJEu8GtaGineOw1U/ooTx53MrWp9tHSDbdDKBdYA/ldYGOtp13pCzPCuv4ZketXW1o/KthaZAQJgeqK4zCbZSK+hfJhONZAChqzW4Bp8rzXA01YXfD7K2g4ke2S5MC2HntxCrX40oI0dSCSACNiA== Received: from HE1EUR04FT016.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4f) by HE1EUR04HT059.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::327) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16; Thu, 17 Jun 2021 02:33:09 +0000 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04FT016.mail.protection.outlook.com (2a01:111:e400:7e0d::93) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:09 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:BCF899D551B54F9C4CFE7F325F678123625BD5E03AA30119F34CCAD6A212EF8C; UpperCasedChecksum:3D38AA2338DE65A59B9CE565BBC549C190D9E81FB1F3657CB1D99653A5C8C81E; SizeAsReceived:7599; Count:48 Received: from VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b]) by VI1PR0301MB2159.eurprd03.prod.outlook.com ([fe80::d9b:66ba:63ad:967b%5]) with mapi id 15.20.4242.019; Thu, 17 Jun 2021 02:33:09 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Jun 2021 04:31:27 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [rAezlbX7bmbTD+CuFNvWHVjK3A5mtMxM] X-ClientProxiedBy: AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) To VI1PR0301MB2159.eurprd03.prod.outlook.com (2603:10a6:800:26::20) X-Microsoft-Original-Message-ID: <20210617023202.1318312-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.97.82) by AM0PR04CA0115.eurprd04.prod.outlook.com (2603:10a6:208:55::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.16 via Frontend Transport; Thu, 17 Jun 2021 02:33:09 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 21c01a25-3fcc-4de5-8e50-08d931383f16 X-MS-Exchange-SLBlob-MailProps: +LiGfBxqLEuqjb86iTW3gk5Jbr2ZJA1ORVElVV0itJPkKShV4uMkVNaKJiZKlPc2uAOcWdHloofW2k3ZU26zykbo7MQZ3UdEipGqI7Wcsj8dl3LkfQDrU3bPmtB8czsjZ1JZYx54a4EAoi040JyCsWr4teHMNxEfiJRFIUiIzIg/gf5SWFSg8jTIpi04yUi4agM4nhM7/ww4eoYZf88VBpDJCkJbrPx2gi4jxhfzzGPuT+eLW4OtDuSLOMWICOQ4dcPfxMBoXY+lFEz5ETzZ9cNxByq6yzddgV10ekNRlb0NQy3RVHDT2HUm+IovMtzW1pMNIt0f0XogAOvjV/aXDRc1FNFu3aL3SnWxwT2QriAhBWB2GfHI70vBldgMSuJyKhVEfRmkGX/qCMnvKXvMsRA+gOBYZ+fgps75qs8ooiCaIsIofGyBP4CPkxxutbGGrkRJO8G8uI2eRNJGTcymWWQyyZCZnT2YvMTKQaETeZ6Wj1JBB1bToOFSw3hsNhM8Uyzy+Wz0Ik41aw4bJiNTvUtpIzqzX3/BUDwMC5GZ7m9DSZHr5zVCxIEMnIzSuHvmmJqvRXJO58hquXoVcuUQ1JR5DxFxEc8QDIdWOjGTX87GorLUk52CzLbutQMKqkAyPbVkcVb0um6sTNgaMYEawU4P42b23jDL1jioq3aq5g/UUibHTpMZF6Eit88FVU9SPDmjYe3liqfE+BwdQKMYf3SLnIHKPZvV9b8tD6ZJ3m1jR1eYljLBs+zMG8yleY5WEV2lu9nZiX5upXqDp+izE+0+nBBDAK3c X-MS-TrafficTypeDiagnostic: HE1EUR04HT059: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 7pOzDMiDD2hR1NjpPZbi7KDeZgHIJGknRsHtqTf66Cn0Ux7cVWppcKdRZ/UHZaj43kR6isYC2ZvxM6ZBCSDRoan5JZep/8YW/+ro7WhLjE8P5bh6iH8SBcUwwOFLLfe0U1QUDhn+ifaQXLxhA5mo9kCHv0KQH4t57Z8J4yq4BV+sNzT88eRqK6BLHq/+y5A6WtnxlrliwcqyP0G6L5I+KjI5VA89R2wjTazrehnOY3236zR4hg1iY6TbgCcMxEbzcVImOtl/vovUVAOkNNmw50iyX9Vbzh2DBKe4i7Thq+FG/LctKz8FA0b/57Fx7kPtwZTAz9zavBV7/xspa1JujAu54bUpz5wjfKKTQt4IBVWTeH+O7RHzFvwOAdGKFIQNj/2vBbdXSw9IQbiQ5N3F8Q== X-MS-Exchange-AntiSpam-MessageData: h5snrdZ2uEcC0iKOP5AGDgwqio3L3owMTB96MT0YyJoJaEHV5/8BI5/i48DTh1zXIAEqZ2+7m7j3M5eA6DdAnxk4QWkhFX6d7kGE2a5ku9fHXhJBvai15KL9CKRatExhNFAkoDk5nS1m7TbNqZr1qw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 21c01a25-3fcc-4de5-8e50-08d931383f16 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jun 2021 02:33:09.8297 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT016.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT059 Subject: [FFmpeg-devel] [PATCH 06/41] avformat/flacdec, takdec: Use FFRawDemuxerContext directly 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: +ikKsgXEc+xU The beginning of the private contexts of both the FLAC and the TAK demuxer currently mimick FFRawDemuxerContext: A pointer to an AVClass followed by the AVOpt-enabled field raw_packet_size. Said field is only used by the demuxers' read_packet functions via ff_raw_read_partial_packet(), which treats the private context as an FFRaawDemuxerContext. Yet this is fragile, so better include a FFRawDemuxerContext struct at the beginning of said demuxers' private contexts. Signed-off-by: Andreas Rheinhardt --- libavformat/flacdec.c | 3 +-- libavformat/takdec.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/libavformat/flacdec.c b/libavformat/flacdec.c index d4158032e4..c841fdba01 100644 --- a/libavformat/flacdec.c +++ b/libavformat/flacdec.c @@ -31,8 +31,7 @@ #define SEEKPOINT_SIZE 18 typedef struct FLACDecContext { - AVClass *class; - int raw_packet_size; + FFRawDemuxerContext rawctx; int found_seektable; } FLACDecContext; diff --git a/libavformat/takdec.c b/libavformat/takdec.c index cbb9a9345e..cf400ec04b 100644 --- a/libavformat/takdec.c +++ b/libavformat/takdec.c @@ -31,8 +31,7 @@ #include "rawdec.h" typedef struct TAKDemuxContext { - AVClass *class; - int raw_packet_size; + FFRawDemuxerContext rawctx; int mlast_frame; int64_t data_end; } TAKDemuxContext;