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 81BD547084 for ; Mon, 25 Sep 2023 23:54:35 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BD00868C9F7; Tue, 26 Sep 2023 02:54:28 +0300 (EEST) Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02olkn2075.outbound.protection.outlook.com [40.92.50.75]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 209B668C5CE for ; Tue, 26 Sep 2023 02:54:26 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Tms7blQxiOwpiPhMNTINDDU0rlO8u2lXyzWYgKAR2Kh99r3N1KZFY0RPovtDejw2Y6BQqXSWP49V2FgDepztNdVgnB9dIIwUpq/YKRGONrv1NoXsrjWxx0XtHrEBph/cXVS2SSR/VJQxBr5DfcBqT3+Shep9MwR4XBA0ziSLMzkx7Ot5E1pc3zpM0WNeY0AyuCIlgD2dGkgByzUcR9T/WxBPssl4xopm5yzNLJigBukkwiAYp3K8KxVYrgGZNdEcwlaBYSOhMABRM8gRcVpU4HlnznlHa8E8r9JISoX1Xli5EvNjIrZG/pGVBJrV6qDRjkdgAIkjoMAsC1wMhjPv3A== 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=FSSHG4u78q8kQnfYEhjLrwo5mShild4dwWteq7TISc8=; b=lu1kd0E7VitwB8t5bfv6iJu4PfcN5vmV2b90eyfUzRjaI5kklN3Uw+WO7Y0UD65qsyGysmJdrIb796U/fWHIeb0WU2IJ8+51KN0b4gvQeHlK2coicjKQAJSsKI6qaVIIn7dRmaQ/kiHLrMWqcHqBCJcNhfz/yVt1BKzZSqeQEwesvDksPnKPHX8qfYh5scRPOiQqM9npjmThnQb3WVIp8+Q7gXkNGm8OTCP2Ycn8RGC1bXBhKnNs2U4DPW9zBxIPp3av3Ogs7kFI37fSfrQoQkRAndG4J7f0JD+fbW5W40q+xAst3KPuqu7O7S8P+3jHY5y0sLkcpysA7Sv8LqGNsQ== 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=FSSHG4u78q8kQnfYEhjLrwo5mShild4dwWteq7TISc8=; b=M2iunzc/SiK2s4vU+UhLqXxPoQLFHpGlCHcItODZ38Fn8hsTlGqiu7xMTNKQFtVWK2CQ3edgnUa7VhB0iY6v1Oa+1EgXwnem8oZb1uCgbIG97uox/iL8H70LZ1VEBJqzzuPOJXbhM1cJKT+wbccHaF7e2GliMBpGTwlpcQHqEc2hH4SyeymV/bkbyvIhUNfd2GfKqN9ebX868ZJT5XIReGnWyQ7k0vyARZ0WXJZ56VelzLCLMAjO7E8kWYRJvJPJQzTX51m0OEJ74gqL41/UInMFlBUtibhbCEPBoZbL4dk//wrT42sz04brFydyU9FAF5SDQiQUAwgGziyvspAJLA== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by DU2P250MB0146.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:273::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Mon, 25 Sep 2023 23:54:19 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::5e01:aea5:d3a8:cafa%3]) with mapi id 15.20.6792.026; Mon, 25 Sep 2023 23:54:19 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 26 Sep 2023 01:55:26 +0200 Message-ID: X-Mailer: git-send-email 2.34.1 In-Reply-To: References: X-TMN: [7zsB2/mNW1TGnMWUM2Zne1i2tJU9BnTt] X-ClientProxiedBy: ZR0P278CA0019.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1c::6) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <20230925235526.2668347-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|DU2P250MB0146:EE_ X-MS-Office365-Filtering-Correlation-Id: 5dbb4bc1-c3a5-44c6-9203-08dbbe22bbea X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /WwIdRY1deCGhg7Q13p5siMbzfcT7xpRLI1ewDdSSgqXXLbBwA68LzLj7o3wzzdr8nU6lMlf3Czwu3qNBpVg29od3s0Ct26+xEZ/lIno90SCt0TyceM90ksxhuzeCD4KO2DkMlzme9Djx2E5wswhClOHJgGYA9CClcqb/8H2MEzKGkucSJhCIWl/E60mAb/VT7P+UWAziLbIz0o1VSMa710We2H8Jz0dkSFcganZMlntEYp+siYOSqliM9PCkchSbNC8+PF/7Z/Z2q0aUtHAzEJEu3hl5e/Fh7FVTWiTYbQ26KwP3NQG5z5fbWfOHw15U9UihnSu1G9KOay4Mpc7B1MpvGBVfndEPODlsGl/uVCjTAZd0VouMePJoCxnh98/ZxwcUJUaAfeYdrFoCzYWz6rqsF6J0sKnOJx4PDFdyi2AixO+WQ/NqS6kRptGFmcrfyJHxw0zsv6ZBomXtlm3kDzA6SAoV5S8rFP571w31j2t5DsLwfnzNeAOVWG/HE6V/94BCcIVxlOrtcPo1MNSNThvMzkQmr/uQpYI4JyuAJrWgycEhjgsUSq+j0UjvKa0r9m3guhF5gLVdcQcoHvOo5Cw/gshU0c6MSk4sQANW4s9V0RtFDhQPO1jTx9PFYcT X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?yMhNpbZmHvJlKy08XdzTjoz+emy7KQAuyZIYTOMyF7mMMOafyFrGp/6Qy5pT?= =?us-ascii?Q?rR720I9JmyyGwi3l7EPPUqW4F7hcKZL8a4W4s9MYVtLHS5lEi+2BGg4Wxf5r?= =?us-ascii?Q?D9Fyz8e2ZYJNIRPKOlU6bIwNoYUYgALRbkuprVB09TKFUuQaFfDh1iyoi7y+?= =?us-ascii?Q?EV7qwzUkqvfTHYPMkbAudzC3H3mWxdW3hFrrpykWalHcj4HHbW6HX8ClmrXu?= =?us-ascii?Q?Oyes0wsxvyb8W49hJavGQUP6e8h7ZSgw+gqkGjyuoOvQSNPz1cnnJCBt5ee9?= =?us-ascii?Q?eHE5l9hMDSZmpSbTyCvfnq4RfrcOUH9fcY3LGBmQItcuP4n67Yb22BawWae6?= =?us-ascii?Q?wwbzzhiDV9Y08PaEqcz7edrW37PmNNMkVOOhF4s0IrZ9uV7ysiHsv3Typr+l?= =?us-ascii?Q?XwTJf9wP1pTSv+sWVwckF3RTL8LS5xZQsyu7jMb/D1+/ELaiNL1TGu2/Cia7?= =?us-ascii?Q?dB7ppcpTyKtjrS2Ms7L4fNUVBENe8JjDm4aFWqMOxF5wO6GH7KoXgkitJrBE?= =?us-ascii?Q?LNKbcEMknwMAYrcvxHJvL2aaiQyoI+I/xtnxMtuktm07rO/D1CBFBtV/Ljo5?= =?us-ascii?Q?dVFVgIk1QTa4PPbyvA770Qa3rBwSNUjCDwuXgalMWXCvOy0ldPdjXAXhQeZg?= =?us-ascii?Q?BmeDxx/piBnDUu0lCAq00053+2cYuvOBgpYKT7aW0hM/njlMcTGHJB6g4Dtk?= =?us-ascii?Q?3SLc30J73HCPead8HVBeMnbvrU+ggcpW2cX2avFjxk6xXbhkzp0iYxYbYTPr?= =?us-ascii?Q?+AHXcHL7KRIKelK9cXeAyVYjkHkVL/Ksl/n4sNDOXfYiuhJ62qQ1+hbP00Jn?= =?us-ascii?Q?GYlJKku1ZWMAkyXd+oVZa6FHM4eD7u9Jva/p7yA4iJVnqcF4H1O8IHHvG0O/?= =?us-ascii?Q?t19DPpklp/UrygRisESGZ7munarfqMBcFeOzTrtoTRLPsfMRNWRI/xjV7Lun?= =?us-ascii?Q?UoozBRmW1pbLAas7dyS7dbv5cVkyliQQOVe6Q5yZQNIAaFoNkyJR9VDu+8rF?= =?us-ascii?Q?OSNfclFbLIVLkcKkS3qbLNoKhFQVBD14yoljTQl6O41zdpFdMnP6ZYZUyKAW?= =?us-ascii?Q?oHijjMUCtWANlSHJCNBftcAQwZzmnOE3XfLhQ1xkncfflFxPAYXUUMd8tmsE?= =?us-ascii?Q?ZWBoQBirTbiH3kUsNw6DtAQ5egyViCLLL4yq69csrpkerMOpbQVDLE7o6GVi?= =?us-ascii?Q?ovlQLpdEOdr5dymufBktVk9FjQvVa/eclJ3cOurVHT9/Te20AzcLTZMqo3E7?= =?us-ascii?Q?AJJLrym+tlzDc7mFtRj3?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5dbb4bc1-c3a5-44c6-9203-08dbbe22bbea X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2023 23:54:19.6080 (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: DU2P250MB0146 Subject: [FFmpeg-devel] [PATCH 3/3] avcodec/avcodec: Avoid codec_desc.h, codec_par.h inclusions 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: Instead, use forward declarations; and in order not to affect any user include these headers for them, but not internally. This has the advantage of removing implicit inclusions of these headers from almost all files providing codecs. Signed-off-by: Andreas Rheinhardt --- libavcodec/avcodec.c | 1 + libavcodec/avcodec.h | 14 +++++++++----- libavcodec/decode.c | 1 + libavcodec/encode.c | 1 + libavcodec/nvenc.c | 1 + libavcodec/tests/codec_desc.c | 2 +- libavcodec/utils.c | 2 ++ libavcodec/vaapi_decode.c | 1 + libavfilter/vf_subtitles.c | 1 + 9 files changed, 18 insertions(+), 6 deletions(-) diff --git a/libavcodec/avcodec.c b/libavcodec/avcodec.c index 131834b6de..f2dc7b0edd 100644 --- a/libavcodec/avcodec.c +++ b/libavcodec/avcodec.c @@ -37,6 +37,7 @@ #include "avcodec.h" #include "avcodec_internal.h" #include "bsf.h" +#include "codec_desc.h" #include "codec_internal.h" #include "decode.h" #include "encode.h" diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index da3c5234a0..09400b97b0 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -31,6 +31,7 @@ #include "libavutil/attributes.h" #include "libavutil/avutil.h" #include "libavutil/buffer.h" +#include "libavutil/channel_layout.h" #include "libavutil/dict.h" #include "libavutil/frame.h" #include "libavutil/log.h" @@ -38,8 +39,6 @@ #include "libavutil/rational.h" #include "codec.h" -#include "codec_desc.h" -#include "codec_par.h" #include "codec_id.h" #include "defs.h" #include "packet.h" @@ -49,8 +48,13 @@ * to avoid unnecessary rebuilds. When included externally, keep including * the full version information. */ #include "version.h" + +#include "codec_desc.h" +#include "codec_par.h" #endif +struct AVCodecParameters; + /** * @defgroup libavc libavcodec * Encoding/Decoding Library @@ -1815,7 +1819,7 @@ typedef struct AVCodecContext { * - encoding: unused. * - decoding: set by libavcodec. */ - const AVCodecDescriptor *codec_descriptor; + const struct AVCodecDescriptor *codec_descriptor; /** * Current statistics for PTS correction. @@ -2328,7 +2332,7 @@ const AVClass *avcodec_get_subtitle_rect_class(void); * * @return >= 0 on success, a negative AVERROR code on failure */ -int avcodec_parameters_from_context(AVCodecParameters *par, +int avcodec_parameters_from_context(struct AVCodecParameters *par, const AVCodecContext *codec); /** @@ -2340,7 +2344,7 @@ int avcodec_parameters_from_context(AVCodecParameters *par, * @return >= 0 on success, a negative AVERROR code on failure. */ int avcodec_parameters_to_context(AVCodecContext *codec, - const AVCodecParameters *par); + const struct AVCodecParameters *par); /** * Initialize the AVCodecContext to use the given AVCodec. Prior to using this diff --git a/libavcodec/decode.c b/libavcodec/decode.c index 466c393c1e..9b23a6717c 100644 --- a/libavcodec/decode.c +++ b/libavcodec/decode.c @@ -45,6 +45,7 @@ #include "avcodec_internal.h" #include "bytestream.h" #include "bsf.h" +#include "codec_desc.h" #include "codec_internal.h" #include "decode.h" #include "hwaccel_internal.h" diff --git a/libavcodec/encode.c b/libavcodec/encode.c index 7cd3213b73..a436be2657 100644 --- a/libavcodec/encode.c +++ b/libavcodec/encode.c @@ -30,6 +30,7 @@ #include "avcodec.h" #include "avcodec_internal.h" +#include "codec_desc.h" #include "codec_internal.h" #include "encode.h" #include "frame_thread_encoder.h" diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c index 65b96d6cf6..02486c2043 100644 --- a/libavcodec/nvenc.c +++ b/libavcodec/nvenc.c @@ -36,6 +36,7 @@ #include "libavutil/pixdesc.h" #include "libavutil/mathematics.h" #include "atsc_a53.h" +#include "codec_desc.h" #include "encode.h" #include "internal.h" #include "packet_internal.h" diff --git a/libavcodec/tests/codec_desc.c b/libavcodec/tests/codec_desc.c index c9b3497343..bceb91a32a 100644 --- a/libavcodec/tests/codec_desc.c +++ b/libavcodec/tests/codec_desc.c @@ -16,7 +16,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#include "libavcodec/avcodec.h" +#include "libavcodec/codec_desc.h" int main(int argc, char **argv) { diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 3cb3828228..8807a8c2b6 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -35,7 +35,9 @@ #include "libavutil/pixfmt.h" #include "avcodec.h" #include "codec.h" +#include "codec_desc.h" #include "codec_internal.h" +#include "codec_par.h" #include "decode.h" #include "hwconfig.h" #include "thread.h" diff --git a/libavcodec/vaapi_decode.c b/libavcodec/vaapi_decode.c index 10b4284db0..ceac769c52 100644 --- a/libavcodec/vaapi_decode.c +++ b/libavcodec/vaapi_decode.c @@ -23,6 +23,7 @@ #include "libavutil/pixdesc.h" #include "avcodec.h" +#include "codec_desc.h" #include "decode.h" #include "internal.h" #include "vaapi_decode.h" diff --git a/libavfilter/vf_subtitles.c b/libavfilter/vf_subtitles.c index e2857e90c0..ef5f9cd866 100644 --- a/libavfilter/vf_subtitles.c +++ b/libavfilter/vf_subtitles.c @@ -33,6 +33,7 @@ #include "config_components.h" #if CONFIG_SUBTITLES_FILTER # include "libavcodec/avcodec.h" +# include "libavcodec/codec_desc.h" # include "libavformat/avformat.h" #endif #include "libavutil/avstring.h" -- 2.34.1 _______________________________________________ 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".